Commit graph

2463 commits

Author SHA1 Message Date
Omar Hatem
3ce4000dcf
Cw 78 ethereum (#862)
* Add initial flow for ethereum

* Add initial create Eth wallet flow

* Complete Ethereum wallet creation flow

* Fix web3dart versioning issue

* Add primary receive address extracted from private key

* Implement open wallet functionality

* Implement restore wallet from seed functionality

* Fixate web3dart version as higher versions cause some issues

* Add Initial Transaction priorities for eth
Add estimated gas price

* Rename priority value to tip

* Re-order wallet types

* Change ethereum node
Fix connection issues

* Fix estimating gas for priority

* Add case for ethereum to fetch it's seeds

* Add case for ethereum to request node

* Fix Exchange screen initial pairs

* Add initial send transaction flow

* Add missing configure for ethereum class

* Add Eth address initial setup

* Fix Private key for Ethereum wallets

* Change sign/send transaction flow

* - Fix Conflicts with main
- Remove unused function from Haven configure.dart

* Add build command for ethereum package

* Add missing Node list file to pubspec

* - Fix balance display
- Fix parsing of Ethereum amount
- Add more Ethereum Nodes 

* - Fix extracting Ethereum Private key from seeds
- Integrate signing/sending transaction with the send view model

* - 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

* 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

* 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` 

* Update build guide

* Fix fetching fiat rate taking a lot of time by only fetching enabled tokens only and making the API calls in parallel not sequential

* Update transactions on a periodic basis

* For fee, use ETH spot price, not ERC-20 spot price

* Add Etherscan History privacy option to enable/disable Etherscan API

* Show estimated fee amounts in the send screen

* fix send fiat fields parsing issue

* Fix transactions estimated fee less than actual fee

* handle balance sorting when balance is disabled
Handle empty transactions list

* Fix Delete Ethereum wallet
Fix balance < 0.01

* Fix Decimal place for Ethereum amount
Fix sending amount issue

* Change words count

* Remove balance hint and Full balance row from Ethereum wallets

* support changing the asset type in send templates

* Fix Templates for ERC tokens issues

* Fix conflicts in send templates

* Disable batch sending in Ethereum

* Fix Fee calculation with different priorities

* Fix Conflicts with main

* Add offline error to ignored exceptions

---------

Co-authored-by: Justin Ehrenhofer <justin.ehrenhofer@gmail.com>
2023-08-04 20:01:49 +03:00
Adegoke David
4120394121
CW-266 verbose access controls for TOTP 2FA (#967)
* chore: Setup

* feat: Verbose controls for TOTP 2FA WIP [skip-ci]

* feat: Implement verbose controls for sends to contact, non contacts and internal wallets

* feat: Implement verbose 2FA control for exchanges to internal wallets [skip-ci]

* Implement verbose controls

* chore: PR cleanup

* fix: Implement fixes and recommendations on verbose controls

* feat: Localization for verbose controls settings

* fix: disable pin when 2fa is not activated

* fix: Naming error

* chore: Reformat code with linelength of 100

* fix: Wallet type page and type bug when creating wallet

* fix: add new values to be stored in local storage to both reload function and import/export functions in back_service.dart

* fix: White spaces with localization files

* fix: Switch observers in modify_2fa page to individual observer

* chore: Switch custom tab widget to reusable SettingsChoicesCell widget

* chore: Remove unneeded argument in create wallet entrypoint

* fix: Switch type for selectedCakePreference when importing preferences from backup file

* fix: Await all values being saved to local storage

---------

Co-authored-by: David Adegoke <blazebrain@Davids-MacBook-Pro.local>
2023-08-04 16:49:26 +03:00
Adegoke David
e9df03b49b
feat: Introduce QR Scanning to add new node (#1007)
* feat: Introduce QR Scanning to add new node

* fix: Exception handing for scan qr and invalid qr value

* fix: Exception handing for scan qr and invalid qr value
2023-08-04 14:27:19 +03:00
Konstantin Ullrich
76322a1777
CW-392 Allow Users to rename Monero and Haven accounts (#1008) 2023-08-04 14:18:27 +03:00
Serhii
d5c0012964
CW-224-Allow-Monero-proxy-in-node-settings (#966)
* update setupNodeSync func

* minor fixes

* localization

* add request node with proxy

* formatting
2023-08-02 14:48:52 +03:00
Rafael Saes
fcf4fbdc14
Cw 433 support send templates with multiple recipients (#995)
* feat: Support Send templates with multiple recipients

* feat: use only first name for template display, and sum total amount

* fix: amounts being wiped

* feat: make send template card buttons function like send card

* feat: replace amount -> name for template name

* fix: template name
2023-08-02 01:19:04 +03:00
Konstantin Ullrich
c68baf7244
CW-423 Use SensitiveClipboard for sensitive Stings (#1013)
* CW-423 Use SensitiveClipboard for sensitive Stings

* CW-423 Bump Android Target and Min SDK

* CW-423 Use Helper function for sensitive Clipboard
2023-08-01 15:52:03 +03:00
Konstantin Ullrich
cfaa89d165
CW-425 use the open alias new line UI (#1004)
* CW-425 Display Contact Name in the send view

* CW-425 Ignore false positives on OpenAlias
2023-08-01 15:00:00 +03:00
Matthew Fosse
962074c093
fix nav-bar issue (#1010)
Co-authored-by: fossephate <fosse@book.local>
2023-07-31 21:06:45 +03:00
Matthew Fosse
b28f85350a
CW-441 xmr price issue (#1005)
* refactor fiat_rate_update

* remove commented line
2023-07-27 04:08:12 +03:00
Konstantin Ullrich
da2f1c62f5
CW-443 Use networkWallets on OnRamper (#1012)
* CW-443 Use networkWallets on OnRamper

* CW-443 Normalize XMR
2023-07-26 19:48:53 +03:00
Omar Hatem
b2c8b32e49
Free Up GitHub Actions Ubuntu Runner Disk Space (#1009) 2023-07-21 17:21:37 +03:00
Rafael Saes
8996a46784
fix: add monero rename related fixes into main (#1002) 2023-07-18 15:11:24 +03:00
Omar Hatem
e34ba6cfbc
Update app versions (#998) 2023-07-14 20:18:46 +03:00
Justin Ehrenhofer
b963f83f4f
Fix shib and storj (#997) 2023-07-13 21:47:12 +03:00
Omar Hatem
bc432b1042
Fix Bitcoin transactions not showing (#978)
* handle multiple responses coming in a single event

* Add timeout for getting transaction info, to allow other transactions to be returned in case of any failure or network issue

* Handle other cases of receiving multiple messages in the same response
2023-07-13 21:46:55 +03:00
Justin Ehrenhofer
d7fa9991e1
CW-306 New assets for exchange and cleanup (#993)
* CW-306 New assets for exchange and cleanup

* Remove 1inch
2023-07-13 17:31:45 +03:00
Godwin Asuquo
ff420c7c7e
Cw 430 find a better way to decide when to show the desktop UI (#977)
* Find a better way to decide when to show the desktop UI

* fix UI issue for tablet view

* fix trocar invoice issue for landscape layout

* fix present receive option piker UI issue

* fix dascktop layout

* - Fix AnonPay Navigation
- Fix Wallet changing on Mobile

---------

Co-authored-by: Serhii <borodenko.sv@gmail.com>
Co-authored-by: OmarHatem <omarh.ismail1@gmail.com>
2023-07-13 16:05:52 +03:00
Rafael Saes
d4969633b0
Cw 426 replace trash and swipe with edit icons (#974)
* feat: Replace trash and swipe with edit icons on node list item

- replaces yellow Test button with red Delete node button with confirmation on the edit node page

* feat: make node indicator icons bigger (figma comment)

* feat: Replace trash and swipe with edit icons on wallet list page and create wallet_edit_page.dart

* fix: make delete buttons red

* fix: make wallet name wrap when it is too long

* refactor: improve logic & fix observer not refreshing

* fix: add string

* feat: remove the confirmation pop-up for switching between wallets

- which was another item on the jira issue

* fix: remove slideable widgets from node list

* feat: add edit button to currently selected node & disable deleting if selected

* fix: rename wallet also renames to new wallet files

* feat: make sure edits can't overlap existing names

* fix: improve rename flow, fix electrum transactions refresh & add delete old logic

* fix: also fix rename for monero & haven

* refactor: fix identations

* refactor: dont declare the current wallet twice

* refactor: missing newWalletInfo.id

* fix: dont unnecessarily load the current wallet

* fix: remove unnecessary reaction

* feat: make save button disabled until the text is changed

* feat: make walletEditViewModel and make state useful for pending actions

* fix: add back reaction for desktop flow

* - Remove un-necessary code
- Format Edit page

---------

Co-authored-by: OmarHatem <omarh.ismail1@gmail.com>
2023-07-13 02:20:11 +03:00
Rafael Saes
bb6dea0292
Cw 354 app issues with huge font size (#906)
* fix: make welcome screen scrollable

* fix: make pre seed page scrollable

* fix: make wallet seed page scrollable

* refactor: remove unnecessary and stacked widgets and remove IntrinsicHeight & LayoutBuilder used for SingleChildScrollView, and replace it for CustomScrollView on welcome_page.dart

* refactor: remove unnecessary Flexible widgets and remove IntrinsicHeight & LayoutBuilder for SingleChildScrollView and replace it for CustomScrollView on pre_seed_page.dart

* refactor: remove unnecessary and stacked widgets and remove IntrinsicHeight & LayoutBuilder used for SingleChildScrollView, and replace it for CustomScrollView on wallet_seed_page.dart

* fix: revert welcome_page.dart unwanted changes

* fix: image expands more than needed

* fix: fix image expands more than needed while testing on Linux build

* Fix Scrolling behavior on Desktop and Overflow on Mobile

---------

Co-authored-by: OmarHatem <omarh.ismail1@gmail.com>
2023-07-12 18:52:28 +03:00
Rafael Saes
d5642fa0ff
Cw 355 more talkback unlabeled (#913)
* feat(Talkback): make add contact button labeled

* feat(Talkback): add labeled semantics to cakepay buttons

- Use BasePage's default labeled back button instead of override
- Add filter button semantics
- Add ExcludeSemantics to search icon because it was messing with the whole search input box semantics and making it sound like an unlabeled button
- Add profile button label

* feat(Talkback): add labeled semantics to send page buttons

- Add semantics label to Paste button
- Add semantics label to Scan button
- Add semantics label to Address Book button

* fix: use i18n strings instead of hardcoded semantics labels and add missing 'profile' string

* fix: also add localization to back button on base page

* fix(Talkback): add the rest of localized strings & add missing close string

* fix: pt strings

* feat: add correct strings using translate script

* Update strings_yo.arb [skip ci]

---------

Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
2023-07-12 00:21:59 +03:00
Serhii
02fd12f5f8
CW-214-Monero-wallet-rescan-bug (#945)
* clear transactionHistory before rescan

* move the clear method to the abstract class
2023-07-11 20:56:01 +03:00
Omar Hatem
181fd21636
Disable Cake Pay Mobile (#994)
* Remove navigation to ionia

* Hide 'introducing cake pay' card
2023-07-11 20:12:13 +03:00
Godwin Asuquo
b974458f1b
CW-349 MacOS UI issue when navigating to Transaction details screen (#921)
* Fix macos ui issues when navigatng to transaction detail screen

* [skip ci] remove print and indent

* Refactor previous approach based on PR review

* Code Enhancements

* Fix transaction page navigation

* Fix disable secure app request for macos

* Update background color

* Update background color

* Update background color

* Remove unrelated format

* Fix navigation UI glitch

---------

Co-authored-by: OmarHatem <omarh.ismail1@gmail.com>
2023-07-11 19:07:46 +03:00
Godwin Asuquo
bf0c2c8f35
Add all deposit for litcoin (#932) 2023-07-11 03:52:40 +03:00
Rafael Saes
cb0ca169fb
Cw 372 improve monero haven account selection picker (#939)
* refactor: Improve Monero/Haven account selection picker

* feat: If the amount would be wrapped, instead display it under the account name

* fix: balance str

* refactor: add theme changes

* refactor: remove duplicate observer
2023-07-11 03:40:43 +03:00
Serhii
c01321008b
CW-427-Refactor-wallet-type-selection-UI (#968)
* refactor the asset selection screen

* formatting

* ui fixes

* remove Ethereum related
2023-07-10 18:12:15 +03:00
Rafael Saes
49e2e05a72
feat(strings): create new script to auto translate all files (#992)
* feat(strings): create new script to auto translate all files

* - Fix path issue in append_translation.sh
- Document flow for using it
- Reformat localization files

---------

Co-authored-by: OmarHatem <omarh.ismail1@gmail.com>
2023-07-10 16:54:22 +03:00
Serhii
9afed201c6
CW-424-ChangeNOW-add-payload-details (#979)
* add payload details

* remove unused import

* fix payload
2023-07-08 05:30:05 +03:00
Serhii
93eda7c206
CW-417-Additional-callouts (#976)
* add available balance description

* add sync description

* Update URL [skip-ci]

* Update balance_page.dart

---------

Co-authored-by: Justin Ehrenhofer <justin.ehrenhofer@gmail.com>
2023-07-07 14:47:55 +03:00
Justin Ehrenhofer
bb75472a83
Remove defaultFiat (#972)
Logic can be better handled by IP
2023-06-22 05:20:50 +03:00
Omar Hatem
e9b5c79a1e
V4.6.7 v1.3.8 (#971)
* - Replace payfura widget with direct browser link
- Remove Payfura widget class as it is duplicate for the web view page

* Revert removing swipe to delete wallet feature

* Pump app versions and update release notes
2023-06-20 15:27:07 +03:00
Omar Hatem
c4926ae63a
V4.6.6 fixes (#970)
* Fix popping wrong context in exchange page

* Pass exception handler to wallets code

* Fix mobile UI with iPad view

* Set iPhone deployment target to 11 [skip ci]

* Update Macos deployment target [skip ci]
2023-06-16 04:14:01 +03:00
Serhii
f1904077d2
CW-395-Trade-ID-status-not-updating-in-trade-details-screen (#957)
* fix ChangeNow trade status

* formatting

* fix hive saving

* Revert SideShift changes

This reverts commit
2023-06-14 23:55:49 +03:00
Serhii
f88e150cd1
fix Electrum transaction updates (#953) 2023-06-14 23:53:58 +03:00
Serhii
a7ba4a84e8
CW-398-MoonPay-offramp-(Sell)-improvements (#964)
* Implement MoonPay offramp widget

* Add Litecoin to strings

* improve webview page

* Rename route string

---------

Co-authored-by: Justin Ehrenhofer <justin.ehrenhofer@gmail.com>
Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
2023-06-14 02:15:10 +03:00
Godwin Asuquo
affc35f335
CW-342 Enable Mac Layout on iPad (#958)
* Add iPad responsive layout

* Set magic number to position input field on wider screens

* Adjust screen resolution

* Update target device family for ios

* Add icons for iPad

* Revert width adjustment for ipad

* Fix overflowing balance

* Fix overflowing balance

* Fix PR issues

* Remove unused icons [skip ci]

---------

Co-authored-by: OmarHatem <omarh.ismail1@gmail.com>
2023-06-14 02:04:52 +03:00
Rafael Saes
e84d02f661
CW-383-replace-swipe-to-delete-wallet-action-with-a-delete-trash-icon-on-the-right (#935)
* feat: replace "swipe to delete" wallet action with a delete / trash icon on the right

* fix: remove InkWell and _actionPane actions

* feat: add a bit of padding from the end
2023-06-10 01:31:05 +03:00
Rafael Saes
b16cfaaff5
Cw 231 display balance in send and transaction screens when long pressing and when show balance is disabled (#926)
* feat: allow reversing displayMode by long pressing on transactions page

* feat: allow reversing displayMode by long pressing on send page

* revert: revert transaction_list_item.dart but keep BalanceDisplayMode get displayMode => balanceViewModel.displayMode
2023-06-10 01:29:34 +03:00
Godwin Asuquo
a4c279b538
CW-411 Update sideshift api (#959)
* Update sideshift api

* Fix sideShift api v2 rate

* Fix rate calculation on sideshift

* Additional fixes

* Minor: Add additional unsupported
* Add network to quote
* Add amount and affiliateID to quote
* Refactor tag/network assigning

* Fix syntax errors with rate qpi

* Add network for fetching rate

* Remove amount from rate endpoint

* Fix transaction depositAmount

* Fix issues from code review

* Fix issues from code review

* Remove affiliate ID

---------

Co-authored-by: Justin Ehrenhofer <justin.ehrenhofer@gmail.com>
2023-06-09 14:46:00 +03:00
Godwin Asuquo
e8446f0c98
CW-400 investigate cupertino nav bar null exception (#943)
* Fix null error on back navigation after pushReplacementNamed

* Fix null error on back navigation after pushReplacementNamed

* Close all visible keyboard for page navigation context

* Fix issue with market place navigation

* Remove focus before back navigation

* Fix background color

* Fix background color

* Fix background color
2023-06-08 02:16:52 +03:00
Adegoke David
3b073d9751
Cw-410 Null Issue With 2FA (#960)
* chore: Setup

* hotfix: null check operator used when totp arguments are null causing issues

* hotfix: null check operator used when totp arguments are null causing issues

* hotfix: null check operator used when totp arguments are null causing issues

* hotfix: null check operator used when totp arguments are null causing issues

* fix: Review changes

---------

Co-authored-by: David Adegoke <blazebrain@Davids-MacBook-Pro.local>
2023-06-06 15:13:49 +03:00
Mathias Herberts
8747d2fe59
Fixed for v4.6.4 (#955) 2023-06-05 16:41:15 +03:00
Mathias Herberts
5e270df568
Fixed 2FA related French localization (#956) 2023-06-05 16:40:34 +03:00
Godwin Asuquo
ce8e498cac
Revert rename nga flag (#952) 2023-06-01 15:46:17 +03:00
Omar Hatem
19cbc40e81
New versions 4.6.6 and 1.3.7 (#949)
Disable 'prevent screenshots' option from Desktop since it's not supported yet
2023-05-26 21:13:22 +03:00
Godwin Asuquo
75c65d67bf
CW-404 Add yoruba language (#946)
* Add Yoruba translation

* Add Yoruba localization

* Rename flag
2023-05-25 20:30:21 +03:00
Omar Hatem
4e4b3c7a56
Update Monero package (#942) 2023-05-25 15:46:45 +03:00
Rafael Saes
baabc0a915
Cw 373 theme refactoring in preparation to support additional themes (#933)
* refactor(Theme): migrate accentColor

- based on the specs at https://docs.flutter.dev/release/breaking-changes/theme-data-accent-properties#migration-guide.

* refactor(Theme): all deprecated TextTheme styles

* refactor(Theme): deprecated backgroundColor for colorScheme.background

* refactor(Theme): deprecated buttonColor to use TextTheme backgroundColor instead

* refactor(Theme): deprecated isAlwaysShown to use thumbVisibility instead
2023-05-25 02:19:51 +03:00
Serhii
c835059d13
CW-371-Restore-height-issue-with-QR-code-Wallet-incorrectly-assigns-today's-restore-height-to-legacy-wallets (#925)
* fix height for legacy wallets

* get height by first tx under singular seed
2023-05-25 00:00:54 +03:00