Commit graph

2605 commits

Author SHA1 Message Date
Matthew Fosse
65ed9f7ed8 Merge branch 'main' of https://github.com/cake-tech/cake_wallet into CW-565-sign-messages 2024-05-06 09:50:58 -07:00
rottenwheel
55cdec810e
fix: remove comma in OpenAlias title (#1430) 2024-05-06 14:32:31 +03:00
Konstantin Ullrich
5eabdcdca1
Cw 604 integrate bitcoin ledger (#1407)
* CW-503 Prepare Ledger integration

* CW-503 Revert Tor ignore

* CW-503 Add Connect Device Page

* CW-503 Add createWalletFromDevice for monero

* CW-503 Add Connect Device Page

* CW-503 Add Connect Device Page

* CW-503 Add Debug Options

* CW-503 Add proper hardware wallet selection screen

* CW-503 Minor design changes on connect_device_page

* CW-503 Add Create Wallet from Ledger

* CW-503 Spent Ledger ETH Funds

* CW-503 Minor fixes

* CW-503 Fix Merge conflicts

* CW-503 Fix Merge conflicts

* CW-503 Fix Merge conflicts

* CW-503 Fix minor conflicts

* CW-503 Improve Ledger BLE Communication

* CW-503 Improve Ledger BLE Communication

* CW-503 Rollback Monero Test code

* CW-503 Fix Execution failed for task :app:checkReleaseDuplicateClasses

* CW-503 Better Error-Exceptions

* CW-503 Add SetPinScreen before restore from hardware-wallet

* CW-503 override web3dart to use cake's git hosted version

* CW-503 Implement ledger sign messages

* CW-503 Implement ledger sign messages and send erc20 tokens

* CW-503 Fix merge conflicts

* CW-503 Fix merge conflicts

* CW-503 Use dep override for ledger_flutter

* CW-503 Ledger ERC20 finalisation

* CW-503 More graceful error handling

* CW-503 Even more graceful error handling & remove debug code

* CW-503 Minor Changes for Vik

* CW-503 Fix USB connection

* CW-503 Maybe this overrides web3dart finally

* Indicate Loading on the first 5 Wallet Accounts

* Prepare Ledger Bitcoin

* Fix conflicts with main

* Add Bluetooth permission to iOS [skip ci]

* add privacyinfo for ios [skip ci]

* update PrivacyInfo.xcprivacy [scip ci]

* ios shit [skip ci]

* Improve bitcoin xpub

* Resolve open Todos regarding iOS Support

* Minor debug

* Remove erc20 dependency to have more granular control over the tx UX

* Create Bitcoin Wallets using xpub

* Create Bitcoin Wallets using xpub

* Better error handling

* Improve Ledger account handling

* Add Bitcoin Support for Ledger

* Add Bitcoin Support for Ledger

* Add Bitcoin Support for Ledger

* Implement requested Changes

* Implement requested Changes

* Minor fix

* Implement requested Changes

* Implement requested Changes

* Add comment to remind me

* Enable RBF for Bitcoin Ledger

* Fix merge conflicts

* Update wallet_info.dart

* Cw 503 ledger support (#1310)

* CW-503 Prepare Ledger integration

* CW-503 Revert Tor ignore

* CW-503 Add Connect Device Page

* CW-503 Add createWalletFromDevice for monero

* CW-503 Add Connect Device Page

* CW-503 Add Connect Device Page

* CW-503 Add Debug Options

* CW-503 Add proper hardware wallet selection screen

* CW-503 Minor design changes on connect_device_page

* CW-503 Add Create Wallet from Ledger

* CW-503 Spent Ledger ETH Funds

* CW-503 Minor fixes

* CW-503 Fix Merge conflicts

* CW-503 Fix Merge conflicts

* CW-503 Fix Merge conflicts

* CW-503 Fix minor conflicts

* CW-503 Improve Ledger BLE Communication

* CW-503 Improve Ledger BLE Communication

* CW-503 Rollback Monero Test code

* CW-503 Fix Execution failed for task :app:checkReleaseDuplicateClasses

* CW-503 Better Error-Exceptions

* CW-503 Add SetPinScreen before restore from hardware-wallet

* CW-503 override web3dart to use cake's git hosted version

* CW-503 Implement ledger sign messages

* CW-503 Implement ledger sign messages and send erc20 tokens

* CW-503 Fix merge conflicts

* CW-503 Fix merge conflicts

* CW-503 Use dep override for ledger_flutter

* CW-503 Ledger ERC20 finalisation

* CW-503 More graceful error handling

* CW-503 Even more graceful error handling & remove debug code

* CW-503 Minor Changes for Vik

* CW-503 Fix USB connection

* CW-503 Maybe this overrides web3dart finally

* Indicate Loading on the first 5 Wallet Accounts

* Fix conflicts with main

* Add Bluetooth permission to iOS [skip ci]

* add privacyinfo for ios [skip ci]

* update PrivacyInfo.xcprivacy [scip ci]

* ios shit [skip ci]

* Resolve open Todos regarding iOS Support

* Remove erc20 dependency to have more granular control over the tx UX

* Better error handling

* Improve Ledger account handling

* Implement requested Changes

* Implement requested Changes

* Implement requested Changes

* Implement requested Changes

* Fix merge conflicts

* Update wallet_info.dart

---------

Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>

* Fix merge conflicts

* Fix merge conflicts

* Minor Fix to derivations

* Update cw_bitcoin/lib/bitcoin_wallet.dart [skip ci]

* Update cw_bitcoin/lib/bitcoin_wallet.dart [skip ci]

* Update cw_bitcoin/lib/electrum_wallet.dart [skip ci]

* Fix backward compatibility issues

* Merge Tron

* Fix Tron with HW changes

* fix ble on iOS
fix tron address validation

---------

Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
2024-05-05 04:44:50 +03:00
Omar Hatem
043d7d7c8b
Generic fixes (#1427)
* fix for private key solana

* Fix Solana wallet open
2024-05-04 15:35:26 +03:00
Matthew Fosse
d5543ceb08
nano derivation fix (#1428) 2024-05-04 15:35:15 +03:00
Adegoke David
d1870ba8b8
CW-525-Add-Tron-Wallet (#1327)
* chore: Initial setup for Tron Wallet

* feat: Create Tron Wallet base flow implemented, keys, address, receive, restore and proxy classes all setup

* feat: Display seed and key within the app

* feat: Activate restore from key and seed for Tron wallet

* feat: Add icon for tron wallet in wallet listing page

* feat: Activate display of receive address for tron

* feat: Fetch and display tron balance, sending transaction flow setup, fee limit calculation setup

* feat: Implement sending of native tron, setup sending of trc20 tokens

* chore: Rename function

* Delete lib/tron/tron.dart

* feat: Activate exchange for tron and its tokens, implement balance display for trc20 tokens and setup secrets configuration for tron

* feat: Implement tron token management, add, remove, delete, and get tokens in home settings view, also minor cleanup

* feat: Activate buy and sell for tron

* feat: Implement restore from QR, transactions history listing for both native transactions and trc20 transactions

* feat: Activate send all and do some minor cleanups

* chore: Fix some lint infos and warnings

* chore: Adjust configurations

* ci: Modify CI to create and add secrets for node

* fix: Fixes made while self reviewing the PR for this feature

* feat: Add guide for adding new wallet types, and add fixes to requested changes

* fix: Handle exceptions gracefully

* fix: Alternative for trc20 estimated fee

* fix: Fixes to display of amount and fee, removing clashes

* fix: Fee calculation WIP

* fix: Fix issue with handling of send all flow and display of amount and fee values before broadcasting transaction

* fix: PR review fixes and fix merge conflicts

* fix: Modify fetching assetOfTransaction [skip ci]

* fix: Move tron settings migration to 33
2024-05-03 21:00:05 +03:00
Omar Hatem
e4fd534949
Generic Enhancements (#1426)
* Better handle deep links after authentication

* handle no auth required case and some enhancements

* deprecate old variables [skip ci]
2024-05-03 20:36:00 +03:00
Matthew Fosse
196d3cb23c Merge branch 'main' of https://github.com/cake-tech/cake_wallet into CW-565-sign-messages [skip ci] 2024-05-01 09:51:51 -07:00
Matthew Fosse
4c50cc7551
minor script fix (#1423) 2024-05-01 19:44:22 +03:00
Omar Hatem
e87353c012
fix backward compatibility issue with existing electrum wallets (#1424) 2024-05-01 19:21:04 +03:00
Omar Hatem
f9e9b1d67e
update versions (#1418) 2024-04-30 04:05:48 +03:00
Matthew Fosse
509b92e97f
Bitcoin derivations (#1089)
* - Update and Fix Conflicts with main

* Add Balances for ERC20 tokens

* Fix conflicts with main

* Add erc20 abi json

* Add send erc20 tokens initial function

* add missing getHeightByDate in Haven [skip ci]

* Allow contacts and wallets from the same tag

* Add Shiba Inu icon

* Add send ERC-20 tokens initial flow

* Add missing import in generated file

* Add initial approach for transaction sending for ERC-20 tokens

* Refactor signing/sending transactions

* Add initial flow for transactions subscription

* Refactor signing/sending transactions

* Add home settings icon

* Fix conflicts with main

* Initial flow for home settings

* Add logic flow for adding erc20 tokens

* Fix initial UI

* Finalize UI for Tokens

* Integrate UI with Ethereum flow

* Add "Enable/Disable" feature for ERC20 tokens

* Add initial Erc20 tokens

* Add Sorting and Pin Native Token features

* Fix price sorting

* Sort tokens list as well when Sort criteria changes

* - Improve sorting balances flow
- Add initial add token from search bar flow

* Fix Accounts Popup UI

* Fix Pin native token

* Fix Enabling/Disabling tokens
Fix sorting by fiat once app is opened
Improve token availability mechanism

* Fix deleting token
Fix renaming tokens

* Fix issue with search

* Add more tokens

* - Fix scroll issue
- Add ERC20 tokens placeholder image in picker

* - Separate and organize default erc20 tokens
- Fix scrolling
- Add token placeholder images in picker
- Sort disabled tokens alphabetically

* Change BNB token initial availability [skip ci]

* Fix Conflicts with main

* Fix Conflicts with main

* Add Verse ERC20 token to the initial tokens list

* Add rename wallet to Ethereum

* Integrate EtherScan API for fetching address transactions
Generate Ethereum specific secrets in Ethereum package

* Adjust transactions fiat price for ERC20 tokens

* Free Up GitHub Actions Ubuntu Runner Disk Space

* Free Up GitHub Actions Ubuntu Runner Disk space (trial 2)

* Fix Transaction Fee display

* Save transaction history

* Enhance loading time for erc20 tokens transactions

* Minor Fixes and Enhancements

* Fix sending erc20
fix block explorer issue

* Fix int overflow

* Fix transaction amount conversions

* Minor: `slow` -> `Slow` [skip-ci]

* initial changes

* more base config stuff

* config changes

* successfully builds!

* save

* successfully add nano wallet

* save

* seed generation

* receive screen + node screen working

* tx history working and fiat fixes

* balance working

* derivation updates

* nano-unfinished

* sends working

* remove fees from send screen, send and receive transactions working

* fixes + auto receive incoming txs

* fix for scanning QR codes

* save

* update translations

* fixes

* more fixes

* more strings

* small fix

* fix github actions workflow

* potential fix

* potential fix

* ci/cd fix

* change rep working

* seed generation fixes

* fixes

* save

* change rep screen functional

* save

* banano changes

* fixes, start adding ui for PoW

* pow node changes

* update translations

* fix

* account changing barely working

* save

* disable account generation

* small fix

* save

* UI work

* save

* fixes after merge main

* fixes

* remove monero stuff, work on derivation ui

* lots of fixes + finish up seed derivation

* last minute fixes

* node related fixes

* more fixes

* small fix

* more fixes

* fixes

* pretty big refactor for pow, still some bugs

* finally works!

* get transactions after send

* fix

* merge conflict fixes

* save

* fix pow node showing up twice

* done

* initial changes

* small fix

* more merge fixes

* fixes

* more fixes

* fix

* save

* fix manage pow nodes setting appearing on other wallets

* fix contact bug

* fixes

* fiat fixes

* save

* save

* save

* save

* updates

* cleanup

* restore fix

* fixes

* remove deprecated alert

* fix

* small fix

* remove outdated warning

* electrum restore fixes

* fixes

* fixes

* fix

* derivation fixes

* nano fixes pt.1

* nano fixes pt.2

* bip39 fixes

* pownode refactor

* nodes pages fixes

* observer fix

* ssl fix

* remove old references

* remove unused imports

* code cleanup

* small fix

* small potential fix

* save

* derivation fixes

* deterministic fix

* fix pt.2

* derivation class fixes

* review fixes from nano that also apply here

* formatting

* stuff that should've stayed deleted

* post merge fixes

* remove problematic imports and duplicate changes

* Delete lib/nano/nano.dart

* move wallet restore page proxy code to the view model

* fix dashboard page indicators being the same color

* debatably better refactoring of derivationInfo, migration needed

* additional refactor improvements

* blanket comment some stuff out to narrow down this issue

* refactor fixes

* fix nano exchange

* fix , bug, i.e. replace , with . when making a nano transaction

* fix nano sending, update restore page wording, and other minor fixes

* write migration for existing bitcoin and nano wallets

* merge fixes

* minor fixes

* use default derivation type when restoring from qr code

* fixes for restoring

* fixes

* fixes

* merge fix

* Fix issues with Creating Electrum and Restoring Bip39

* updates & fixes

* Add missing case for no transactions BIP39 wallet restore

* Make the default BIP39 the 84 derivation path

* Add Samourai Deposit

* litecoin mnemonic error fix

* Bip39 passphrase support (#1412)

* save

* passphrase working

* fix for when loading wallets + translation update

* minor fix

* Fix Nano

* minor fix [skip ci]

---------

Co-authored-by: OmarHatem <omarh.ismail1@gmail.com>

* change error state seed conditions into throwables [skip ci]

* litecoin fixes

* Bip39 minor enhancements (#1416)

* minor enhancements

* rename bitcoin_derivations -> electrum_derivations

* Remove duplicate derivations
handle default case

* minor fix

* Enable passphrase for Litecoin

* obscure text of passphrase

---------

Co-authored-by: OmarHatem <omarh.ismail1@gmail.com>
Co-authored-by: Justin Ehrenhofer <justin.ehrenhofer@gmail.com>
Co-authored-by: fossephate <fosse@book.local>
2024-04-30 03:49:56 +03:00
Matthew Fosse
10ad96d4da Merge branch 'main' of https://github.com/cake-tech/cake_wallet into CW-565-sign-messages 2024-04-29 08:59:00 -07:00
Omar Hatem
9e4a7f4331
Enhance bitcoin error message (#1399)
* Enhance bitcoin error message

* fix: unconfirmed spends, spend confirmed first, wrong balance exception

* Minor fixes

---------

Co-authored-by: Rafael Saes <git@rafael.saes.dev>
2024-04-26 22:29:31 +03:00
Omar Hatem
f3160860b1
Better handle corrupted wallets (#1384)
* Fix exchanges not showing

* Fix button text on Monero receive screen

* Temp fix for ERC20 and SPL tokens not having raw value

* fallback to other wallets if the current wallet is corrupted so we give user access to the app

---------

Co-authored-by: tuxsudo <tuxsudo@tux.pizza>
2024-04-26 22:13:44 +03:00
Serhii
a6dc9bf9d6
Update electrum_wallet.dart (#1411) 2024-04-26 19:18:35 +03:00
Serhii
7fcf48f91d
Fix estimated fee calculation for customs fee rate (#1406)
* Update output.dart

* fix estimated fee calculation

* Update bitcoin_transaction_priority.dart
2024-04-26 19:18:26 +03:00
Omar Hatem
a5a3b4ac0e
Update crypto_currency.dart 2024-04-26 05:32:13 +03:00
Serhii
9ff6da3d5d
dynamic max fee rate value (#1395) 2024-04-25 18:28:18 +02:00
Konstantin Ullrich
190c8e06b9
Use the latest version of the DFX Auth Api to minimize the number of API calls (#1410) 2024-04-25 13:06:11 +02:00
Konstantin Ullrich
3732a4c646
Language Fixes for DE (#1409) 2024-04-25 12:52:24 +02:00
Adegoke David
fff77519d9
Generic Fixes: Support Errors and others (#1394)
* fix: Crypto amout formatting when calculating fiat amount

* fix: Issue with some token symbols coming up with a dollar sign

* feat: Split transactions to display on history screen token byh token

* fix: Remove restriction on balance length

* fix: error when a particular token is not available

* fix: Remove token transactions when a token is deleted

* fix: Revert previous change

* make added spl tokens enabled by default
fix issue when entering invalid contract address

---------

Co-authored-by: OmarHatem <omarh.ismail1@gmail.com>
2024-04-25 03:14:53 +02:00
Adegoke David
2ac81250c2
CW-615-Add-Check-For-Contract-Address (#1387)
* feat: Check if address is a valid Externally Owned Address

* feat: Check if the EVM address received when exchanging tokens is a valid EOA address

* move the contract address check to be only in the case of ThorChain [skip ci]

* some enhancements

* feat: Implement check for contract address for inputAddress when exchanging to ETH

* fix: Remove previous implementation and clean up current implementation for the check for contract address

* chore: Remove unneed space

* chore: Remove unneed space

---------

Co-authored-by: OmarHatem <omarh.ismail1@gmail.com>
2024-04-25 03:14:11 +02:00
Matthew Fosse
dcfb2b2b73
fix empty string case (#1401)
* bio auth mac fix

* remove comment and change duration from 2 to 0

* cherry pick previous changes

* fix empty string case

* add support for path for all currency types

* disable paths on electrum and monero nodes

* undo mac auth changes

* stuff I missed

* 1 last thing

* another thing I missed
2024-04-25 02:00:53 +02:00
Matthew Fosse
c36e91237c attempt to decode signatures with base64 2024-04-24 10:14:57 -07:00
Adegoke David
65799a8764
fix: Issue with the privateKey of Solana wallets being different accross various apps (#1400) 2024-04-24 04:04:16 +02:00
Matthew Fosse
843cff4cdf update translations 2024-04-23 15:28:39 -07:00
Matthew Fosse
2ac3587ec7 additional nano fixes 2024-04-23 09:36:49 -07:00
Matthew Fosse
541e0f23bd electrum signing working [skip ci] 2024-04-23 08:52:20 -07:00
Matthew Fosse
37dc4ed7dd Merge branch 'main' of https://github.com/cake-tech/cake_wallet into CW-565-sign-messages 2024-04-23 00:13:05 -07:00
Matthew Fosse
4fb5f8d7b2 working sign and verify messages for nano 2024-04-23 00:12:40 -07:00
Matthew Fosse
34b37d95cd verify messages working for monero 2024-04-19 09:26:41 -07:00
Matthew Fosse
94434c426d support accounts 2024-04-18 13:08:48 -07:00
Matthew Fosse
dd486a29e7 litecoin fixes, sign form fixes, use new walletAddressPicker 2024-04-18 13:04:05 -07:00
Omar Hatem
4ed4659f9e
Revert "version bump to 3.13.9, auth working on mac (#1367)" (#1397)
This reverts commit e6b4b08c24.
2024-04-18 20:10:58 +02:00
Matthew Fosse
e48962361a
script updates and new run-android script (#1396) 2024-04-18 20:10:32 +02:00
Matthew Fosse
e6b4b08c24
version bump to 3.13.9, auth working on mac (#1367)
* version bump to 3.13.9, auth working on mac

* bump flutter version in workflow file

* workflow fix

* test fix

* downgrade flutter version

* test fix

* test fix

* update gradle version

* fixes for updated dart version, localization file updates

* remove accidental inclusion

* missed some unimplemented throws
2024-04-18 19:00:24 +02:00
Matthew Fosse
b08bac577d fix litecoin 2024-04-18 08:37:13 -07:00
Matthew Fosse
428b7ccdf0 [skip ci] merge mac-auth/update version 2024-04-17 12:44:27 -07:00
Matthew Fosse
4a32c7d93a Merge branch 'CW-394-mac-auth' of https://github.com/cake-tech/cake_wallet into CW-565-sign-messages 2024-04-17 12:43:52 -07:00
Matthew Fosse
2c10322312 [skip ci] add polygon 2024-04-17 09:10:33 -07:00
Matthew Fosse
bdaf874183 Merge branch 'main' of https://github.com/cake-tech/cake_wallet into CW-565-sign-messages 2024-04-17 08:49:31 -07:00
Matthew Fosse
65ecb7cd60 review suggestions and updates [skip ci] 2024-04-17 08:45:18 -07:00
Matthew Fosse
5aa384c06a
Apply suggestions from code review
Co-authored-by: Konstantin Ullrich <konstantinullrich12@gmail.com>
2024-04-17 08:44:05 -07:00
Matthew Fosse
37d16442cd
Update res/values/strings_de.arb
Co-authored-by: Konstantin Ullrich <konstantinullrich12@gmail.com>
2024-04-17 08:42:31 -07:00
Matthew Fosse
6fbbfce702 missed some unimplemented throws 2024-04-16 15:49:04 -07:00
Matthew Fosse
c84df3935f Merge branch 'main' of https://github.com/cake-tech/cake_wallet into CW-394-mac-auth 2024-04-16 12:08:12 -07:00
Matthew Fosse
e358683e15 remove accidental inclusion 2024-04-16 11:35:33 -07:00
Matthew Fosse
d817911187 fixes for updated dart version, localization file updates 2024-04-16 11:34:53 -07:00
Omar Hatem
59d44e8c57
Generic enhancements (#1386)
* Update versions

* Show private key for electrum based wallets

* update polyseed

* fix webview page on desktop
remove private keys temporarily from electrum

* update versions
2024-04-16 01:49:49 +02:00