-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
MOB-1986 - Fixing incorrect copies #520
Merged
Oleg-Pecheneg
merged 2 commits into
dev/feat/MOB-1885-Fireblocks
from
dev/feat/fireblocks/MOB-1986-fixes
Apr 25, 2024
Merged
MOB-1986 - Fixing incorrect copies #520
Oleg-Pecheneg
merged 2 commits into
dev/feat/MOB-1885-Fireblocks
from
dev/feat/fireblocks/MOB-1986-fixes
Apr 25, 2024
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
rommex
approved these changes
Apr 25, 2024
Oleg-Pecheneg
added a commit
that referenced
this pull request
May 23, 2024
* MOB-1886 - Fireblocks + UD POC (#487) * Added entry points to add mpc wallet * Created view to enter code or email * Added enter passphrase step UI * POC of claim workflow * Added Fireblocks SDK. Recreated sign for JWT device flow * Added logging * Updated base api route. Pass code to passphrase screen * Run fireblocks init action * Stop fireblocks join wallet on error * Refactoring * Improved logging Fixed API calls * Updated UI. Added secure option to text field * Updated fireblocks keys storage * Break mpc flow into steps. Visualise steps on the UI * Set deadline to sign operation * Localize task with delay error * Added circular progress view * Abstract mpc connection with protocol. Abstract building of mpc connector. Created Preview entities * Abstract network layer * Abstracted network layer further * Make action button pressed function's task main actor * Re-enable fireblocks storage solution * Set fireblocks logs level to debug * Temp solution to handle failing and share logs file * Refactoring * Create testable entities * Added tests to user profiles service behaviour * Added more tests of user profiles service * Fixed WalletsDataServiceTests * Fixed DomainProfilesServiceTests * Fixed Tests * Added tests for when domains removed * Refactoring * Updated Fireblocks SDK version * Fixed tests * Added mpc wallet type. Added TODOs to handle it where required * Updated test wallet external id * Created entity to represent JWToken * Use JWToken structure in MPC * Refactoring * Fixed merging issue * Use custom keychain storage * Refactoring. Moved FB-UD implementation details to separate namespace * Refactoring * Refactoring * MOB-1958 - Load MPC wallet assets (#488) * Added entry points to add mpc wallet * Created view to enter code or email * Added enter passphrase step UI * POC of claim workflow * Added Fireblocks SDK. Recreated sign for JWT device flow * Added logging * Updated base api route. Pass code to passphrase screen * Run fireblocks init action * Stop fireblocks join wallet on error * Refactoring * Improved logging Fixed API calls * Updated UI. Added secure option to text field * Updated fireblocks keys storage * Break mpc flow into steps. Visualise steps on the UI * Set deadline to sign operation * Localize task with delay error * Added circular progress view * Abstract mpc connection with protocol. Abstract building of mpc connector. Created Preview entities * Abstract network layer * Abstracted network layer further * Make action button pressed function's task main actor * Re-enable fireblocks storage solution * Set fireblocks logs level to debug * Temp solution to handle failing and share logs file * Refactoring * Create testable entities * Added tests to user profiles service behaviour * Added more tests of user profiles service * Fixed WalletsDataServiceTests * Fixed DomainProfilesServiceTests * Fixed Tests * Added tests for when domains removed * Refactoring * Updated Fireblocks SDK version * Fixed tests * Added mpc wallet type. Added TODOs to handle it where required * Updated test wallet external id * Created entity to represent JWToken * Use JWToken structure in MPC * Refactoring * Fixed merging issue * Use custom keychain storage * Refactoring. Moved FB-UD implementation details to separate namespace * Refactoring * Refactoring * Added function to refresh access token * Added functions to load accounts and account assets * Added function to load available blockchains. Added include balances flag to get assets API. * Created rpc handler for wallet related requests Refactoring * Refactoring * Extended mpc wallet with important properties * Project structure update * MOB-1959 - Added mpc wallet type (#490) * Added entry points to add mpc wallet * Created view to enter code or email * Added enter passphrase step UI * POC of claim workflow * Added Fireblocks SDK. Recreated sign for JWT device flow * Added logging * Updated base api route. Pass code to passphrase screen * Run fireblocks init action * Stop fireblocks join wallet on error * Refactoring * Improved logging Fixed API calls * Updated UI. Added secure option to text field * Updated fireblocks keys storage * Break mpc flow into steps. Visualise steps on the UI * Set deadline to sign operation * Localize task with delay error * Added circular progress view * Abstract mpc connection with protocol. Abstract building of mpc connector. Created Preview entities * Abstract network layer * Abstracted network layer further * Make action button pressed function's task main actor * Re-enable fireblocks storage solution * Set fireblocks logs level to debug * Temp solution to handle failing and share logs file * Refactoring * Create testable entities * Added tests to user profiles service behaviour * Added more tests of user profiles service * Fixed WalletsDataServiceTests * Fixed DomainProfilesServiceTests * Fixed Tests * Added tests for when domains removed * Refactoring * Updated Fireblocks SDK version * Fixed tests * Added mpc wallet type. Added TODOs to handle it where required * Updated test wallet external id * Created entity to represent JWToken * Use JWToken structure in MPC * Refactoring * Fixed merging issue * Use custom keychain storage * Refactoring. Moved FB-UD implementation details to separate namespace * Refactoring * Refactoring * Added function to refresh access token * Added functions to load accounts and account assets * Added function to load available blockchains. Added include balances flag to get assets API. * Created rpc handler for wallet related requests Refactoring * Refactoring * Extended mpc wallet with important properties * Project structure update * Created storage for wallet metadata * Refactoring * Refactoring * Create UD wallet from mpc wallet * Updated mpcMetadata in ud wallet * Stored connected mpc wallet to ud wallets storage * Continue onboarding after mpc wallet added * Updated URLs list * Extended logging. Refactoring * Set wallet address as alias name when create MPC * Updated get bootstrap code function from admin to send it to the email * Remove expected response structure from send code function Handle incorrect code and password errors * Enhanced error code verification * Fixed mpc wallet initial name * Refactoring * Created interface to sign tx in mpc wallet * MOB-1964 - Added ability to purchase mpc wallet (#495) * Added entry points to add mpc wallet * Created view to enter code or email * Added enter passphrase step UI * POC of claim workflow * Added Fireblocks SDK. Recreated sign for JWT device flow * Added logging * Updated base api route. Pass code to passphrase screen * Run fireblocks init action * Stop fireblocks join wallet on error * Refactoring * Improved logging Fixed API calls * Updated UI. Added secure option to text field * Updated fireblocks keys storage * Break mpc flow into steps. Visualise steps on the UI * Set deadline to sign operation * Localize task with delay error * Added circular progress view * Abstract mpc connection with protocol. Abstract building of mpc connector. Created Preview entities * Abstract network layer * Abstracted network layer further * Make action button pressed function's task main actor * Re-enable fireblocks storage solution * Set fireblocks logs level to debug * Temp solution to handle failing and share logs file * Refactoring * Create testable entities * Added tests to user profiles service behaviour * Added more tests of user profiles service * Fixed WalletsDataServiceTests * Fixed DomainProfilesServiceTests * Fixed Tests * Added tests for when domains removed * Refactoring * Updated Fireblocks SDK version * Fixed tests * Added mpc wallet type. Added TODOs to handle it where required * Updated test wallet external id * Created entity to represent JWToken * Use JWToken structure in MPC * Refactoring * Fixed merging issue * Use custom keychain storage * Refactoring. Moved FB-UD implementation details to separate namespace * Refactoring * Refactoring * Added function to refresh access token * Added functions to load accounts and account assets * Added function to load available blockchains. Added include balances flag to get assets API. * Created rpc handler for wallet related requests Refactoring * Refactoring * Extended mpc wallet with important properties * Project structure update * Created storage for wallet metadata * Refactoring * Refactoring * Create UD wallet from mpc wallet * Updated mpcMetadata in ud wallet * Stored connected mpc wallet to ud wallets storage * Continue onboarding after mpc wallet added * Updated URLs list * Extended logging. Refactoring * Set wallet address as alias name when create MPC * Updated get bootstrap code function from admin to send it to the email * Remove expected response structure from send code function Handle incorrect code and password errors * Enhanced error code verification * Fixed mpc wallet initial name * Refactoring * Created interface to sign tx in mpc wallet * Setup purchase mpc wallet module * Created FirebasePurchaseMPCWalletService. Created UI in auth view Refactoring * Purchase module refactoring * Cleaning * Created EcomPurchaseMPCWalletServiceProtocol * Moved auth functions to view model * Handle authentication to purchase mpc * Updated purchase mpc protocol and preview service * Added temp entry point to buy mpc wallet * Purchase mpc view model refactoring * Add and leave only mpc wallet in user's cart * DomainItem cleaning * Added email input view * Update confirm view * Run purchase on action * Cleaning * Fixed filter unsupported products from cart when purchase mpc wallet * Check if user already own mpc wallet * Close flow after purchase * Update request url when login with google * MOB-1953 Prepare wallet code for mpc (#496) * UDWallet, Signing refactored / WalletState removed * refactoring * renaming * restored UDWallet schema * remove dead * refactoring * review changes * MOB-1977 - Restore session with bootstrap token (#503) * Prepare to use bootstrap code if refresh token is expired * Temp throw error when restore with bootstrap code * Updated Fireblocks SDK to 2.4.0 * Implemented refresh auth codes with bootstrap code function * Cleaning * MOB-1985 - Sign personal message with MPC wallet (#508) * Added API calls to start message signing. Updated saved accounts and assets structure. * Prepare and request message signing * Completed message signing funcitonality * Call personal message signing in mpc wallets service * Check for fireblocks instance with device id already initialised * Ask for sig confirmation when receive WC request to MPC wallet * Qeue operations before submitting * Added debug logs * MPCMessage type and helper computed value of String (#507) * Fix preview target * Use new structure to determine message encoding type * Show loading state when activating messaging profile * Cleaning * Use proxy RPC connector in fireblocks * Fixed typo --------- Co-authored-by: rommex <roman@unstoppabledomains.com> * Fixed preview target * MOB-1986 - Activate MPC wallet during onboarding (#512) * Added API calls to start message signing. Updated saved accounts and assets structure. * Prepare and request message signing * Completed message signing funcitonality * Call personal message signing in mpc wallets service * Check for fireblocks instance with device id already initialised * Ask for sig confirmation when receive WC request to MPC wallet * Qeue operations before submitting * Added debug logs * MPCMessage type and helper computed value of String (#507) * Fix preview target * Use new structure to determine message encoding type * Show loading state when activating messaging profile * Cleaning * Use proxy RPC connector in fireblocks * Updated connect wallet screen UI * Updated copies * Updated enter credentials view UI * Localize content * Pass entered MPC credentials * Created and connected mpc activation module * Implemented UI for activation progress card * Handle errors and finish * Update UI for error states * Created activation input view * Handle entered data * Fix typo * Added email format verification * Added resend code functionality Updated UI for IP SE * Updated logic and UI in activation screen * Adjust UI for IP SE * Updated MPC wallet card background * Refactoring * Updated onboarding tutorial screen * Created new UI for add wallet view * Cleaning * Created view to select add wallet option * Implemented UI and option selection when add wallet * Updated dashed progress view * Fixed typo * Copies update --------- Co-authored-by: rommex <roman@unstoppabledomains.com> * MOB-1992 - Let user activate MPC wallet after onboarding (#518) * Updated add wallet selection pull up * Setting up activation flow. Created enter credentials view * Implemented navigation to enter code and activation screens * Updated fireblocks connector environment * Adjust UI * Handle signature still processing by fireblocks * Dismiss activate MPC flow on finish * Pass activation result * MOB-1986 - Fixing incorrect copies (#520) * MOB-1986 - Fixing incorrect copies * Check for MPC_EDDSA_ED25519 fireblocks key is ready * MOB-1996 - Update MPC wallets UI (#521) * Fixed Preview target * Updated UI of MPC wallet in the lists * Removed back up option for mpc wallet * Updated UI for locally generated wallet * Updated icon for web account option during onboarding Updated copies * Updated UI of mpc activation screens * MOB-1997 - Load balances for MPC wallet (#523) * MOB-1986 - Onboarding MPC fixes (#524) * Updated title for activating screen * Increase the timeout for keys is ready * Load balances for all mpc wallet assets * Updates in MPC wallets work (#525) * Increase request join wallet timeout * Handle message already signed via MPC wallet * Disable channels for MPC wallet * Disable WC for MPC wallet * Fixed race condition issue * Fix MPC message conversion (#530) * updated method * added tests * Fixed tests target --------- Co-authored-by: Oleg <oleg@unstoppabledomains.com> * Fixed Preview target * MOB-1998 - Send crypto from MPC wallet (#535) * Increase request join wallet timeout * Handle message already signed via MPC wallet * Disable channels for MPC wallet * Disable WC for MPC wallet * Fixed race condition issue * Refresh assets and accounts when refresh balances Created function to send crypto * Added function to check if can send crypto. Extended function to find asset with chain * Added transfer function to protocol. Updated request transfer payload. * Fixed mpc wallet asset search * Increase timeout * Added more tokens to MPC mapping list * Fixed additional balances loading for MPC wallet * Added handling of crypto records from domain for SOL and BTC * Initialize mpc connecter earlier * Prepare CryptoSender for mpc wallet (#529) * CryptoSender refactoring * Refactoring * My fixes to MPC preparations (#534) * renaming * refactor * refactor to direct access to NetworkService * encapsulation * encapsulate mapping * typo --------- Co-authored-by: rommex <roman@unstoppabledomains.com> * Get and pass tx hash when send crypto from MPC wallet Cleaning * Use currencies data form resolver to get exanded ticker * Fixed preview target * Fixed chain id * Refactoring * Fixed typo * Cleaning --------- Co-authored-by: rommex <roman@unstoppabledomains.com> * MOB-2014 - Share addresses of MPC wallet (#538) * Increase request join wallet timeout * Handle message already signed via MPC wallet * Disable channels for MPC wallet * Disable WC for MPC wallet * Fixed race condition issue * Refresh assets and accounts when refresh balances Created function to send crypto * Added function to check if can send crypto. Extended function to find asset with chain * Added transfer function to protocol. Updated request transfer payload. * Fixed mpc wallet asset search * Increase timeout * Added more tokens to MPC mapping list * Fixed additional balances loading for MPC wallet * Added handling of crypto records from domain for SOL and BTC * Initialize mpc connecter earlier * Prepare CryptoSender for mpc wallet (#529) * CryptoSender refactoring * Refactoring * My fixes to MPC preparations (#534) * renaming * refactor * refactor to direct access to NetworkService * encapsulation * encapsulate mapping * typo --------- Co-authored-by: rommex <roman@unstoppabledomains.com> * Get and pass tx hash when send crypto from MPC wallet Cleaning * Created functions to map mpc assets to balance tokens * Created interface to get mpc wallet addresses * Extended token description with the address * Prepare pull up * Fixed preview target * Basic UI for address selection * Extended ud list item with generic action * Prepare pull up for different scenarious * Prepare pull up * Extend preview entities * Implemented token selection when copy address for MPC wallet from home screen * Extracted sharing UI to separate view * Created mock mpc wallet entity * Implemented UI and transition when asset selected * Adjusted UI for specific token Adjusted UI of asset selection when RR domain is set * Localization * Added missing localization * Show copy address selection from wallet details view * Cleaning --------- Co-authored-by: rommex <roman@unstoppabledomains.com> * MOB-2017 - Fetch gas prices using MPC wallets API (#542) * Added function and structure to fetch gas prices * Disable speed selection for mpc wallet * MOB-2014 - Share MPC addresses fixes (#543) * Fixed MPC assets mapping * Updated copies * Fixed copy domain name action for mpc wallet * MOB-2014 - Fixed copies * Refresh token on app launch * Enable production url * MOB-1942 - Updated Settings screen UI (#546) * MOB - 2008 - Show all accounts in Settings (#539) * Created SettingsView * Created More section in Settings * Added other section and footer * Created UI for profile tiles Updated localisation and assets usage * Fixed profiles UI * Use new SettingsView from Home view * Handle basic actions in settings view * Handle legal type selection * Added top bar button Handle log out * Implemented login flow * Adjusted UI of top action button and profile tile * MOB-2015 - Updated wallet details UI (#540) * Increase request join wallet timeout * Handle message already signed via MPC wallet * Disable channels for MPC wallet * Disable WC for MPC wallet * Fixed race condition issue * Refresh assets and accounts when refresh balances Created function to send crypto * Added function to check if can send crypto. Extended function to find asset with chain * Added transfer function to protocol. Updated request transfer payload. * Fixed mpc wallet asset search * Increase timeout * Added more tokens to MPC mapping list * Fixed additional balances loading for MPC wallet * Added handling of crypto records from domain for SOL and BTC * Initialize mpc connecter earlier * Prepare CryptoSender for mpc wallet (#529) * CryptoSender refactoring * Refactoring * My fixes to MPC preparations (#534) * renaming * refactor * refactor to direct access to NetworkService * encapsulation * encapsulate mapping * typo --------- Co-authored-by: rommex <roman@unstoppabledomains.com> * Get and pass tx hash when send crypto from MPC wallet Cleaning * Created SettingsView * Created More section in Settings * Added other section and footer * Created UI for profile tiles Updated localisation and assets usage * Fixed profiles UI * Use new SettingsView from Home view * Handle basic actions in settings view * Handle legal type selection * Added top bar button Handle log out * Implemented login flow * Created functions to map mpc assets to balance tokens * Created interface to get mpc wallet addresses * Extended token description with the address * Prepare pull up * Fixed preview target * Basic UI for address selection * Extended ud list item with generic action * Prepare pull up for different scenarious * Prepare pull up * Extend preview entities * Implemented token selection when copy address for MPC wallet from home screen * Extracted sharing UI to separate view * Created mock mpc wallet entity * Implemented UI and transition when asset selected * Adjusted UI for specific token Adjusted UI of asset selection when RR domain is set * Localization * Added missing localization * Show copy address selection from wallet details view * Adjusted UI of top action button and profile tile * Created WalletDetailsView Added basic elementes * Adjust icon ui for wallet type Adjust tint color for backed up state * Adjust list spacing * Display domains list * Finished actions UI * Implemented rename wallet view * Handle wallet details screen actions * Added external wallet indicator * MOB-2014 - Share addresses of MPC wallet (#538) * Increase request join wallet timeout * Handle message already signed via MPC wallet * Disable channels for MPC wallet * Disable WC for MPC wallet * Fixed race condition issue * Refresh assets and accounts when refresh balances Created function to send crypto * Added function to check if can send crypto. Extended function to find asset with chain * Added transfer function to protocol. Updated request transfer payload. * Fixed mpc wallet asset search * Increase timeout * Added more tokens to MPC mapping list * Fixed additional balances loading for MPC wallet * Added handling of crypto records from domain for SOL and BTC * Initialize mpc connecter earlier * Prepare CryptoSender for mpc wallet (#529) * CryptoSender refactoring * Refactoring * My fixes to MPC preparations (#534) * renaming * refactor * refactor to direct access to NetworkService * encapsulation * encapsulate mapping * typo --------- Co-authored-by: rommex <roman@unstoppabledomains.com> * Get and pass tx hash when send crypto from MPC wallet Cleaning * Created functions to map mpc assets to balance tokens * Created interface to get mpc wallet addresses * Extended token description with the address * Prepare pull up * Fixed preview target * Basic UI for address selection * Extended ud list item with generic action * Prepare pull up for different scenarious * Prepare pull up * Extend preview entities * Implemented token selection when copy address for MPC wallet from home screen * Extracted sharing UI to separate view * Created mock mpc wallet entity * Implemented UI and transition when asset selected * Adjusted UI for specific token Adjusted UI of asset selection when RR domain is set * Localization * Added missing localization * Show copy address selection from wallet details view * Cleaning --------- Co-authored-by: rommex <roman@unstoppabledomains.com> --------- Co-authored-by: rommex <roman@unstoppabledomains.com> * MOB-2016 - Restored Settings actions (#541) * Increase request join wallet timeout * Handle message already signed via MPC wallet * Disable channels for MPC wallet * Disable WC for MPC wallet * Fixed race condition issue * Refresh assets and accounts when refresh balances Created function to send crypto * Added function to check if can send crypto. Extended function to find asset with chain * Added transfer function to protocol. Updated request transfer payload. * Fixed mpc wallet asset search * Increase timeout * Added more tokens to MPC mapping list * Fixed additional balances loading for MPC wallet * Added handling of crypto records from domain for SOL and BTC * Initialize mpc connecter earlier * Prepare CryptoSender for mpc wallet (#529) * CryptoSender refactoring * Refactoring * My fixes to MPC preparations (#534) * renaming * refactor * refactor to direct access to NetworkService * encapsulation * encapsulate mapping * typo --------- Co-authored-by: rommex <roman@unstoppabledomains.com> * Get and pass tx hash when send crypto from MPC wallet Cleaning * Created SettingsView * Created More section in Settings * Added other section and footer * Created UI for profile tiles Updated localisation and assets usage * Fixed profiles UI * Use new SettingsView from Home view * Handle basic actions in settings view * Handle legal type selection * Added top bar button Handle log out * Implemented login flow * Created functions to map mpc assets to balance tokens * Created interface to get mpc wallet addresses * Extended token description with the address * Prepare pull up * Fixed preview target * Basic UI for address selection * Extended ud list item with generic action * Prepare pull up for different scenarious * Prepare pull up * Extend preview entities * Implemented token selection when copy address for MPC wallet from home screen * Extracted sharing UI to separate view * Created mock mpc wallet entity * Implemented UI and transition when asset selected * Adjusted UI for specific token Adjusted UI of asset selection when RR domain is set * Localization * Added missing localization * Show copy address selection from wallet details view * Adjusted UI of top action button and profile tile * Created WalletDetailsView Added basic elementes * Adjust icon ui for wallet type Adjust tint color for backed up state * Adjust list spacing * Display domains list * Finished actions UI * Implemented rename wallet view * Handle wallet details screen actions * Added external wallet indicator * Redirect initial value to settings view * Cleaning * MOB-2014 - Share addresses of MPC wallet (#538) * Increase request join wallet timeout * Handle message already signed via MPC wallet * Disable channels for MPC wallet * Disable WC for MPC wallet * Fixed race condition issue * Refresh assets and accounts when refresh balances Created function to send crypto * Added function to check if can send crypto. Extended function to find asset with chain * Added transfer function to protocol. Updated request transfer payload. * Fixed mpc wallet asset search * Increase timeout * Added more tokens to MPC mapping list * Fixed additional balances loading for MPC wallet * Added handling of crypto records from domain for SOL and BTC * Initialize mpc connecter earlier * Prepare CryptoSender for mpc wallet (#529) * CryptoSender refactoring * Refactoring * My fixes to MPC preparations (#534) * renaming * refactor * refactor to direct access to NetworkService * encapsulation * encapsulate mapping * typo --------- Co-authored-by: rommex <roman@unstoppabledomains.com> * Get and pass tx hash when send crypto from MPC wallet Cleaning * Created functions to map mpc assets to balance tokens * Created interface to get mpc wallet addresses * Extended token description with the address * Prepare pull up * Fixed preview target * Basic UI for address selection * Extended ud list item with generic action * Prepare pull up for different scenarious * Prepare pull up * Extend preview entities * Implemented token selection when copy address for MPC wallet from home screen * Extracted sharing UI to separate view * Created mock mpc wallet entity * Implemented UI and transition when asset selected * Adjusted UI for specific token Adjusted UI of asset selection when RR domain is set * Localization * Added missing localization * Show copy address selection from wallet details view * Cleaning --------- Co-authored-by: rommex <roman@unstoppabledomains.com> * Cleaning Created security settings view * Fixed security settings navigation and ui state * Adjusted UI of security settings and added domain selection from wallet details --------- Co-authored-by: rommex <roman@unstoppabledomains.com> * Removing unused modules (#544) * Removed unused modules * Updated profiles view UI * Handle circle navigation between domain profile and wallet details * Removing old unused modules * Updated RR domain change from domain profile * Updated wallet selection during minting Removed old wallets list module * Cleaning * Cleaning * Cleaning * MOB-2018 - Add domain actions in wallet details (#545) * MOB-2018 - Add domain actions in wallet details * Fixes after review --------- Co-authored-by: rommex <roman@unstoppabledomains.com> * Share Fireblocks logs in debug * Revert refresh token on app launch * Temporary use api key to get balances for mpc wallet * Fixed preview target * MOB-2020 - Rename MPC wallet product (#547) * Miscellaneous fixes (#548) * Added and use local icons for MPC coins * Improved tx tracking * Improved not matching tokens verification * Added support of tx tracking for sol/btc/base in production in oklink * Added icon for BASE * Avoid race condition when refresh MPC auth token * Removed extra header to get wallet balances * Clear images cache on app update * Fixed transfer and gas fee incorrect amount * Hide wallet badge counter for 0 domains * Added mock external wallet creation * Adjusted wallets UI * Fixed external wallet UI in profiles selection and send crypto * Hide unsupported chain info from ocnfirm send screen * Fixed supported tokens list when sending to wallet without domain * Fixed email managing in domain profile * Updated transfer success title * Updated title * Cleaning * Fetch txs history for all coins in MPC wallet * Fixing UI for light mode * Fixing UI for light mode * Remove dead code * Fixed numbers formatting when sending funds from MPC wallets * MOB-2020 - Fixed copies that referencing mpc wallet product (#551) * Fixed issue when request to change email was made when activating MPC * Disable create wallet selection screen * Fixed preview target * Fixed mpc enter credentials layout on smaller devices * Fixed enter mpc credentials appearance animation * Updated Settings icons * Updated settings more section icons background * Updated add currency view (#552) * Updated add currency view * Improved app navigation responsiveness * Add currency empty state Cleaning * Fixed multithread issue * MOB-2023 - Allow to send BASE using raw address (#553) * MOB-2023 - Allow to send BASE using raw address * Fixed ok link tx url * Removed purchase mpc option from top menu * MOB-2023 - Don't resolve raw address to send crypto (#554) * Fixed issue when passcode verification wasn't started after pull up to confirm send crypto * MOB-2033 - MPC wallets analytics (#556) * Log mpc lifecycle events * Extended analytics on activation stages and corner cases. Track number of mpc wallets * Updated debug topics * Handle null token balance in the response * Updated Fireblocks SDK to 2.4.1 * MOB-2032 - Handle expired MPC wallet tokens (#559) * Created tests for auth tokens refresh flow * Handle tokens expired by removing mpc wallet * Fixed typo * Clear wallet associated data after removed * Created MPCWallets UI handler protocol * Created UI to ask to reconnect mpc wallet * Handle keys set is expired * Ask user for confirmationw hen mpc wallet expired * Log tokens lifetime * Restore mpc logs * Handle queueing of restore mpc wallets requests * Handle sudden token invalidation * Update restart functionality * Updated login flow navigation * Fixed preview target * Hide back button while activating * Store email in mpc wallet metadata * Create separate UI flow for reconnect flow * Setup reimport nav flow * Created remove mpc wallet confirmation pull up * Refactoring Removed change email option when reconnect * Adjusted balance parsing * Fixed ETH records resolution --------- Co-authored-by: rommex <roman@unstoppabledomains.com>
Oleg-Pecheneg
added a commit
that referenced
this pull request
Jun 21, 2024
* MOB-1886 - Fireblocks + UD POC (#487) * Added entry points to add mpc wallet * Created view to enter code or email * Added enter passphrase step UI * POC of claim workflow * Added Fireblocks SDK. Recreated sign for JWT device flow * Added logging * Updated base api route. Pass code to passphrase screen * Run fireblocks init action * Stop fireblocks join wallet on error * Refactoring * Improved logging Fixed API calls * Updated UI. Added secure option to text field * Updated fireblocks keys storage * Break mpc flow into steps. Visualise steps on the UI * Set deadline to sign operation * Localize task with delay error * Added circular progress view * Abstract mpc connection with protocol. Abstract building of mpc connector. Created Preview entities * Abstract network layer * Abstracted network layer further * Make action button pressed function's task main actor * Re-enable fireblocks storage solution * Set fireblocks logs level to debug * Temp solution to handle failing and share logs file * Refactoring * Create testable entities * Added tests to user profiles service behaviour * Added more tests of user profiles service * Fixed WalletsDataServiceTests * Fixed DomainProfilesServiceTests * Fixed Tests * Added tests for when domains removed * Refactoring * Updated Fireblocks SDK version * Fixed tests * Added mpc wallet type. Added TODOs to handle it where required * Updated test wallet external id * Created entity to represent JWToken * Use JWToken structure in MPC * Refactoring * Fixed merging issue * Use custom keychain storage * Refactoring. Moved FB-UD implementation details to separate namespace * Refactoring * Refactoring * MOB-1958 - Load MPC wallet assets (#488) * Added entry points to add mpc wallet * Created view to enter code or email * Added enter passphrase step UI * POC of claim workflow * Added Fireblocks SDK. Recreated sign for JWT device flow * Added logging * Updated base api route. Pass code to passphrase screen * Run fireblocks init action * Stop fireblocks join wallet on error * Refactoring * Improved logging Fixed API calls * Updated UI. Added secure option to text field * Updated fireblocks keys storage * Break mpc flow into steps. Visualise steps on the UI * Set deadline to sign operation * Localize task with delay error * Added circular progress view * Abstract mpc connection with protocol. Abstract building of mpc connector. Created Preview entities * Abstract network layer * Abstracted network layer further * Make action button pressed function's task main actor * Re-enable fireblocks storage solution * Set fireblocks logs level to debug * Temp solution to handle failing and share logs file * Refactoring * Create testable entities * Added tests to user profiles service behaviour * Added more tests of user profiles service * Fixed WalletsDataServiceTests * Fixed DomainProfilesServiceTests * Fixed Tests * Added tests for when domains removed * Refactoring * Updated Fireblocks SDK version * Fixed tests * Added mpc wallet type. Added TODOs to handle it where required * Updated test wallet external id * Created entity to represent JWToken * Use JWToken structure in MPC * Refactoring * Fixed merging issue * Use custom keychain storage * Refactoring. Moved FB-UD implementation details to separate namespace * Refactoring * Refactoring * Added function to refresh access token * Added functions to load accounts and account assets * Added function to load available blockchains. Added include balances flag to get assets API. * Created rpc handler for wallet related requests Refactoring * Refactoring * Extended mpc wallet with important properties * Project structure update * MOB-1959 - Added mpc wallet type (#490) * Added entry points to add mpc wallet * Created view to enter code or email * Added enter passphrase step UI * POC of claim workflow * Added Fireblocks SDK. Recreated sign for JWT device flow * Added logging * Updated base api route. Pass code to passphrase screen * Run fireblocks init action * Stop fireblocks join wallet on error * Refactoring * Improved logging Fixed API calls * Updated UI. Added secure option to text field * Updated fireblocks keys storage * Break mpc flow into steps. Visualise steps on the UI * Set deadline to sign operation * Localize task with delay error * Added circular progress view * Abstract mpc connection with protocol. Abstract building of mpc connector. Created Preview entities * Abstract network layer * Abstracted network layer further * Make action button pressed function's task main actor * Re-enable fireblocks storage solution * Set fireblocks logs level to debug * Temp solution to handle failing and share logs file * Refactoring * Create testable entities * Added tests to user profiles service behaviour * Added more tests of user profiles service * Fixed WalletsDataServiceTests * Fixed DomainProfilesServiceTests * Fixed Tests * Added tests for when domains removed * Refactoring * Updated Fireblocks SDK version * Fixed tests * Added mpc wallet type. Added TODOs to handle it where required * Updated test wallet external id * Created entity to represent JWToken * Use JWToken structure in MPC * Refactoring * Fixed merging issue * Use custom keychain storage * Refactoring. Moved FB-UD implementation details to separate namespace * Refactoring * Refactoring * Added function to refresh access token * Added functions to load accounts and account assets * Added function to load available blockchains. Added include balances flag to get assets API. * Created rpc handler for wallet related requests Refactoring * Refactoring * Extended mpc wallet with important properties * Project structure update * Created storage for wallet metadata * Refactoring * Refactoring * Create UD wallet from mpc wallet * Updated mpcMetadata in ud wallet * Stored connected mpc wallet to ud wallets storage * Continue onboarding after mpc wallet added * Updated URLs list * Extended logging. Refactoring * Set wallet address as alias name when create MPC * Updated get bootstrap code function from admin to send it to the email * Remove expected response structure from send code function Handle incorrect code and password errors * Enhanced error code verification * Fixed mpc wallet initial name * Refactoring * Created interface to sign tx in mpc wallet * MOB-1964 - Added ability to purchase mpc wallet (#495) * Added entry points to add mpc wallet * Created view to enter code or email * Added enter passphrase step UI * POC of claim workflow * Added Fireblocks SDK. Recreated sign for JWT device flow * Added logging * Updated base api route. Pass code to passphrase screen * Run fireblocks init action * Stop fireblocks join wallet on error * Refactoring * Improved logging Fixed API calls * Updated UI. Added secure option to text field * Updated fireblocks keys storage * Break mpc flow into steps. Visualise steps on the UI * Set deadline to sign operation * Localize task with delay error * Added circular progress view * Abstract mpc connection with protocol. Abstract building of mpc connector. Created Preview entities * Abstract network layer * Abstracted network layer further * Make action button pressed function's task main actor * Re-enable fireblocks storage solution * Set fireblocks logs level to debug * Temp solution to handle failing and share logs file * Refactoring * Create testable entities * Added tests to user profiles service behaviour * Added more tests of user profiles service * Fixed WalletsDataServiceTests * Fixed DomainProfilesServiceTests * Fixed Tests * Added tests for when domains removed * Refactoring * Updated Fireblocks SDK version * Fixed tests * Added mpc wallet type. Added TODOs to handle it where required * Updated test wallet external id * Created entity to represent JWToken * Use JWToken structure in MPC * Refactoring * Fixed merging issue * Use custom keychain storage * Refactoring. Moved FB-UD implementation details to separate namespace * Refactoring * Refactoring * Added function to refresh access token * Added functions to load accounts and account assets * Added function to load available blockchains. Added include balances flag to get assets API. * Created rpc handler for wallet related requests Refactoring * Refactoring * Extended mpc wallet with important properties * Project structure update * Created storage for wallet metadata * Refactoring * Refactoring * Create UD wallet from mpc wallet * Updated mpcMetadata in ud wallet * Stored connected mpc wallet to ud wallets storage * Continue onboarding after mpc wallet added * Updated URLs list * Extended logging. Refactoring * Set wallet address as alias name when create MPC * Updated get bootstrap code function from admin to send it to the email * Remove expected response structure from send code function Handle incorrect code and password errors * Enhanced error code verification * Fixed mpc wallet initial name * Refactoring * Created interface to sign tx in mpc wallet * Setup purchase mpc wallet module * Created FirebasePurchaseMPCWalletService. Created UI in auth view Refactoring * Purchase module refactoring * Cleaning * Created EcomPurchaseMPCWalletServiceProtocol * Moved auth functions to view model * Handle authentication to purchase mpc * Updated purchase mpc protocol and preview service * Added temp entry point to buy mpc wallet * Purchase mpc view model refactoring * Add and leave only mpc wallet in user's cart * DomainItem cleaning * Added email input view * Update confirm view * Run purchase on action * Cleaning * Fixed filter unsupported products from cart when purchase mpc wallet * Check if user already own mpc wallet * Close flow after purchase * Update request url when login with google * MOB-1953 Prepare wallet code for mpc (#496) * UDWallet, Signing refactored / WalletState removed * refactoring * renaming * restored UDWallet schema * remove dead * refactoring * review changes * MOB-1977 - Restore session with bootstrap token (#503) * Prepare to use bootstrap code if refresh token is expired * Temp throw error when restore with bootstrap code * Updated Fireblocks SDK to 2.4.0 * Implemented refresh auth codes with bootstrap code function * Cleaning * MOB-1985 - Sign personal message with MPC wallet (#508) * Added API calls to start message signing. Updated saved accounts and assets structure. * Prepare and request message signing * Completed message signing funcitonality * Call personal message signing in mpc wallets service * Check for fireblocks instance with device id already initialised * Ask for sig confirmation when receive WC request to MPC wallet * Qeue operations before submitting * Added debug logs * MPCMessage type and helper computed value of String (#507) * Fix preview target * Use new structure to determine message encoding type * Show loading state when activating messaging profile * Cleaning * Use proxy RPC connector in fireblocks * Fixed typo --------- Co-authored-by: rommex <roman@unstoppabledomains.com> * Fixed preview target * MOB-1986 - Activate MPC wallet during onboarding (#512) * Added API calls to start message signing. Updated saved accounts and assets structure. * Prepare and request message signing * Completed message signing funcitonality * Call personal message signing in mpc wallets service * Check for fireblocks instance with device id already initialised * Ask for sig confirmation when receive WC request to MPC wallet * Qeue operations before submitting * Added debug logs * MPCMessage type and helper computed value of String (#507) * Fix preview target * Use new structure to determine message encoding type * Show loading state when activating messaging profile * Cleaning * Use proxy RPC connector in fireblocks * Updated connect wallet screen UI * Updated copies * Updated enter credentials view UI * Localize content * Pass entered MPC credentials * Created and connected mpc activation module * Implemented UI for activation progress card * Handle errors and finish * Update UI for error states * Created activation input view * Handle entered data * Fix typo * Added email format verification * Added resend code functionality Updated UI for IP SE * Updated logic and UI in activation screen * Adjust UI for IP SE * Updated MPC wallet card background * Refactoring * Updated onboarding tutorial screen * Created new UI for add wallet view * Cleaning * Created view to select add wallet option * Implemented UI and option selection when add wallet * Updated dashed progress view * Fixed typo * Copies update --------- Co-authored-by: rommex <roman@unstoppabledomains.com> * MOB-1992 - Let user activate MPC wallet after onboarding (#518) * Updated add wallet selection pull up * Setting up activation flow. Created enter credentials view * Implemented navigation to enter code and activation screens * Updated fireblocks connector environment * Adjust UI * Handle signature still processing by fireblocks * Dismiss activate MPC flow on finish * Pass activation result * MOB-1986 - Fixing incorrect copies (#520) * MOB-1986 - Fixing incorrect copies * Check for MPC_EDDSA_ED25519 fireblocks key is ready * MOB-1996 - Update MPC wallets UI (#521) * Fixed Preview target * Updated UI of MPC wallet in the lists * Removed back up option for mpc wallet * Updated UI for locally generated wallet * Updated icon for web account option during onboarding Updated copies * Updated UI of mpc activation screens * MOB-1997 - Load balances for MPC wallet (#523) * MOB-1986 - Onboarding MPC fixes (#524) * Updated title for activating screen * Increase the timeout for keys is ready * Load balances for all mpc wallet assets * Updates in MPC wallets work (#525) * Increase request join wallet timeout * Handle message already signed via MPC wallet * Disable channels for MPC wallet * Disable WC for MPC wallet * Fixed race condition issue * Fix MPC message conversion (#530) * updated method * added tests * Fixed tests target --------- Co-authored-by: Oleg <oleg@unstoppabledomains.com> * Fixed Preview target * MOB-1998 - Send crypto from MPC wallet (#535) * Increase request join wallet timeout * Handle message already signed via MPC wallet * Disable channels for MPC wallet * Disable WC for MPC wallet * Fixed race condition issue * Refresh assets and accounts when refresh balances Created function to send crypto * Added function to check if can send crypto. Extended function to find asset with chain * Added transfer function to protocol. Updated request transfer payload. * Fixed mpc wallet asset search * Increase timeout * Added more tokens to MPC mapping list * Fixed additional balances loading for MPC wallet * Added handling of crypto records from domain for SOL and BTC * Initialize mpc connecter earlier * Prepare CryptoSender for mpc wallet (#529) * CryptoSender refactoring * Refactoring * My fixes to MPC preparations (#534) * renaming * refactor * refactor to direct access to NetworkService * encapsulation * encapsulate mapping * typo --------- Co-authored-by: rommex <roman@unstoppabledomains.com> * Get and pass tx hash when send crypto from MPC wallet Cleaning * Use currencies data form resolver to get exanded ticker * Fixed preview target * Fixed chain id * Refactoring * Fixed typo * Cleaning --------- Co-authored-by: rommex <roman@unstoppabledomains.com> * MOB-2014 - Share addresses of MPC wallet (#538) * Increase request join wallet timeout * Handle message already signed via MPC wallet * Disable channels for MPC wallet * Disable WC for MPC wallet * Fixed race condition issue * Refresh assets and accounts when refresh balances Created function to send crypto * Added function to check if can send crypto. Extended function to find asset with chain * Added transfer function to protocol. Updated request transfer payload. * Fixed mpc wallet asset search * Increase timeout * Added more tokens to MPC mapping list * Fixed additional balances loading for MPC wallet * Added handling of crypto records from domain for SOL and BTC * Initialize mpc connecter earlier * Prepare CryptoSender for mpc wallet (#529) * CryptoSender refactoring * Refactoring * My fixes to MPC preparations (#534) * renaming * refactor * refactor to direct access to NetworkService * encapsulation * encapsulate mapping * typo --------- Co-authored-by: rommex <roman@unstoppabledomains.com> * Get and pass tx hash when send crypto from MPC wallet Cleaning * Created functions to map mpc assets to balance tokens * Created interface to get mpc wallet addresses * Extended token description with the address * Prepare pull up * Fixed preview target * Basic UI for address selection * Extended ud list item with generic action * Prepare pull up for different scenarious * Prepare pull up * Extend preview entities * Implemented token selection when copy address for MPC wallet from home screen * Extracted sharing UI to separate view * Created mock mpc wallet entity * Implemented UI and transition when asset selected * Adjusted UI for specific token Adjusted UI of asset selection when RR domain is set * Localization * Added missing localization * Show copy address selection from wallet details view * Cleaning --------- Co-authored-by: rommex <roman@unstoppabledomains.com> * MOB-2017 - Fetch gas prices using MPC wallets API (#542) * Added function and structure to fetch gas prices * Disable speed selection for mpc wallet * MOB-2014 - Share MPC addresses fixes (#543) * Fixed MPC assets mapping * Updated copies * Fixed copy domain name action for mpc wallet * MOB-2014 - Fixed copies * Refresh token on app launch * Enable production url * MOB-1942 - Updated Settings screen UI (#546) * MOB - 2008 - Show all accounts in Settings (#539) * Created SettingsView * Created More section in Settings * Added other section and footer * Created UI for profile tiles Updated localisation and assets usage * Fixed profiles UI * Use new SettingsView from Home view * Handle basic actions in settings view * Handle legal type selection * Added top bar button Handle log out * Implemented login flow * Adjusted UI of top action button and profile tile * MOB-2015 - Updated wallet details UI (#540) * Increase request join wallet timeout * Handle message already signed via MPC wallet * Disable channels for MPC wallet * Disable WC for MPC wallet * Fixed race condition issue * Refresh assets and accounts when refresh balances Created function to send crypto * Added function to check if can send crypto. Extended function to find asset with chain * Added transfer function to protocol. Updated request transfer payload. * Fixed mpc wallet asset search * Increase timeout * Added more tokens to MPC mapping list * Fixed additional balances loading for MPC wallet * Added handling of crypto records from domain for SOL and BTC * Initialize mpc connecter earlier * Prepare CryptoSender for mpc wallet (#529) * CryptoSender refactoring * Refactoring * My fixes to MPC preparations (#534) * renaming * refactor * refactor to direct access to NetworkService * encapsulation * encapsulate mapping * typo --------- Co-authored-by: rommex <roman@unstoppabledomains.com> * Get and pass tx hash when send crypto from MPC wallet Cleaning * Created SettingsView * Created More section in Settings * Added other section and footer * Created UI for profile tiles Updated localisation and assets usage * Fixed profiles UI * Use new SettingsView from Home view * Handle basic actions in settings view * Handle legal type selection * Added top bar button Handle log out * Implemented login flow * Created functions to map mpc assets to balance tokens * Created interface to get mpc wallet addresses * Extended token description with the address * Prepare pull up * Fixed preview target * Basic UI for address selection * Extended ud list item with generic action * Prepare pull up for different scenarious * Prepare pull up * Extend preview entities * Implemented token selection when copy address for MPC wallet from home screen * Extracted sharing UI to separate view * Created mock mpc wallet entity * Implemented UI and transition when asset selected * Adjusted UI for specific token Adjusted UI of asset selection when RR domain is set * Localization * Added missing localization * Show copy address selection from wallet details view * Adjusted UI of top action button and profile tile * Created WalletDetailsView Added basic elementes * Adjust icon ui for wallet type Adjust tint color for backed up state * Adjust list spacing * Display domains list * Finished actions UI * Implemented rename wallet view * Handle wallet details screen actions * Added external wallet indicator * MOB-2014 - Share addresses of MPC wallet (#538) * Increase request join wallet timeout * Handle message already signed via MPC wallet * Disable channels for MPC wallet * Disable WC for MPC wallet * Fixed race condition issue * Refresh assets and accounts when refresh balances Created function to send crypto * Added function to check if can send crypto. Extended function to find asset with chain * Added transfer function to protocol. Updated request transfer payload. * Fixed mpc wallet asset search * Increase timeout * Added more tokens to MPC mapping list * Fixed additional balances loading for MPC wallet * Added handling of crypto records from domain for SOL and BTC * Initialize mpc connecter earlier * Prepare CryptoSender for mpc wallet (#529) * CryptoSender refactoring * Refactoring * My fixes to MPC preparations (#534) * renaming * refactor * refactor to direct access to NetworkService * encapsulation * encapsulate mapping * typo --------- Co-authored-by: rommex <roman@unstoppabledomains.com> * Get and pass tx hash when send crypto from MPC wallet Cleaning * Created functions to map mpc assets to balance tokens * Created interface to get mpc wallet addresses * Extended token description with the address * Prepare pull up * Fixed preview target * Basic UI for address selection * Extended ud list item with generic action * Prepare pull up for different scenarious * Prepare pull up * Extend preview entities * Implemented token selection when copy address for MPC wallet from home screen * Extracted sharing UI to separate view * Created mock mpc wallet entity * Implemented UI and transition when asset selected * Adjusted UI for specific token Adjusted UI of asset selection when RR domain is set * Localization * Added missing localization * Show copy address selection from wallet details view * Cleaning --------- Co-authored-by: rommex <roman@unstoppabledomains.com> --------- Co-authored-by: rommex <roman@unstoppabledomains.com> * MOB-2016 - Restored Settings actions (#541) * Increase request join wallet timeout * Handle message already signed via MPC wallet * Disable channels for MPC wallet * Disable WC for MPC wallet * Fixed race condition issue * Refresh assets and accounts when refresh balances Created function to send crypto * Added function to check if can send crypto. Extended function to find asset with chain * Added transfer function to protocol. Updated request transfer payload. * Fixed mpc wallet asset search * Increase timeout * Added more tokens to MPC mapping list * Fixed additional balances loading for MPC wallet * Added handling of crypto records from domain for SOL and BTC * Initialize mpc connecter earlier * Prepare CryptoSender for mpc wallet (#529) * CryptoSender refactoring * Refactoring * My fixes to MPC preparations (#534) * renaming * refactor * refactor to direct access to NetworkService * encapsulation * encapsulate mapping * typo --------- Co-authored-by: rommex <roman@unstoppabledomains.com> * Get and pass tx hash when send crypto from MPC wallet Cleaning * Created SettingsView * Created More section in Settings * Added other section and footer * Created UI for profile tiles Updated localisation and assets usage * Fixed profiles UI * Use new SettingsView from Home view * Handle basic actions in settings view * Handle legal type selection * Added top bar button Handle log out * Implemented login flow * Created functions to map mpc assets to balance tokens * Created interface to get mpc wallet addresses * Extended token description with the address * Prepare pull up * Fixed preview target * Basic UI for address selection * Extended ud list item with generic action * Prepare pull up for different scenarious * Prepare pull up * Extend preview entities * Implemented token selection when copy address for MPC wallet from home screen * Extracted sharing UI to separate view * Created mock mpc wallet entity * Implemented UI and transition when asset selected * Adjusted UI for specific token Adjusted UI of asset selection when RR domain is set * Localization * Added missing localization * Show copy address selection from wallet details view * Adjusted UI of top action button and profile tile * Created WalletDetailsView Added basic elementes * Adjust icon ui for wallet type Adjust tint color for backed up state * Adjust list spacing * Display domains list * Finished actions UI * Implemented rename wallet view * Handle wallet details screen actions * Added external wallet indicator * Redirect initial value to settings view * Cleaning * MOB-2014 - Share addresses of MPC wallet (#538) * Increase request join wallet timeout * Handle message already signed via MPC wallet * Disable channels for MPC wallet * Disable WC for MPC wallet * Fixed race condition issue * Refresh assets and accounts when refresh balances Created function to send crypto * Added function to check if can send crypto. Extended function to find asset with chain * Added transfer function to protocol. Updated request transfer payload. * Fixed mpc wallet asset search * Increase timeout * Added more tokens to MPC mapping list * Fixed additional balances loading for MPC wallet * Added handling of crypto records from domain for SOL and BTC * Initialize mpc connecter earlier * Prepare CryptoSender for mpc wallet (#529) * CryptoSender refactoring * Refactoring * My fixes to MPC preparations (#534) * renaming * refactor * refactor to direct access to NetworkService * encapsulation * encapsulate mapping * typo --------- Co-authored-by: rommex <roman@unstoppabledomains.com> * Get and pass tx hash when send crypto from MPC wallet Cleaning * Created functions to map mpc assets to balance tokens * Created interface to get mpc wallet addresses * Extended token description with the address * Prepare pull up * Fixed preview target * Basic UI for address selection * Extended ud list item with generic action * Prepare pull up for different scenarious * Prepare pull up * Extend preview entities * Implemented token selection when copy address for MPC wallet from home screen * Extracted sharing UI to separate view * Created mock mpc wallet entity * Implemented UI and transition when asset selected * Adjusted UI for specific token Adjusted UI of asset selection when RR domain is set * Localization * Added missing localization * Show copy address selection from wallet details view * Cleaning --------- Co-authored-by: rommex <roman@unstoppabledomains.com> * Cleaning Created security settings view * Fixed security settings navigation and ui state * Adjusted UI of security settings and added domain selection from wallet details --------- Co-authored-by: rommex <roman@unstoppabledomains.com> * Removing unused modules (#544) * Removed unused modules * Updated profiles view UI * Handle circle navigation between domain profile and wallet details * Removing old unused modules * Updated RR domain change from domain profile * Updated wallet selection during minting Removed old wallets list module * Cleaning * Cleaning * Cleaning * MOB-2018 - Add domain actions in wallet details (#545) * MOB-2018 - Add domain actions in wallet details * Fixes after review --------- Co-authored-by: rommex <roman@unstoppabledomains.com> * Share Fireblocks logs in debug * Revert refresh token on app launch * Temporary use api key to get balances for mpc wallet * Fixed preview target * MOB-2020 - Rename MPC wallet product (#547) * Miscellaneous fixes (#548) * Added and use local icons for MPC coins * Improved tx tracking * Improved not matching tokens verification * Added support of tx tracking for sol/btc/base in production in oklink * Added icon for BASE * Avoid race condition when refresh MPC auth token * Removed extra header to get wallet balances * Clear images cache on app update * Fixed transfer and gas fee incorrect amount * Hide wallet badge counter for 0 domains * Added mock external wallet creation * Adjusted wallets UI * Fixed external wallet UI in profiles selection and send crypto * Hide unsupported chain info from ocnfirm send screen * Fixed supported tokens list when sending to wallet without domain * Fixed email managing in domain profile * Updated transfer success title * Updated title * Cleaning * Fetch txs history for all coins in MPC wallet * Fixing UI for light mode * Fixing UI for light mode * Remove dead code * Fixed numbers formatting when sending funds from MPC wallets * MOB-2020 - Fixed copies that referencing mpc wallet product (#551) * Fixed issue when request to change email was made when activating MPC * Disable create wallet selection screen * Fixed preview target * Fixed mpc enter credentials layout on smaller devices * Fixed enter mpc credentials appearance animation * Updated Settings icons * Updated settings more section icons background * Updated add currency view (#552) * Updated add currency view * Improved app navigation responsiveness * Add currency empty state Cleaning * Fixed multithread issue * MOB-2023 - Allow to send BASE using raw address (#553) * MOB-2023 - Allow to send BASE using raw address * Fixed ok link tx url * Removed purchase mpc option from top menu * MOB-2023 - Don't resolve raw address to send crypto (#554) * Fixed issue when passcode verification wasn't started after pull up to confirm send crypto * MOB-2033 - MPC wallets analytics (#556) * Log mpc lifecycle events * Extended analytics on activation stages and corner cases. Track number of mpc wallets * Updated debug topics * Handle null token balance in the response * Updated Fireblocks SDK to 2.4.1 * MOB-2029 - Purchase MPC wallet POC (#558) * Created ud auth and checkout steps * Prepare purchase function * Created functions to claim and check claims status of the wallet * Created takeover view with required navigation * Created simple UI for takeover * Adjust password validation rule * Fixed purchase with guest user * Fixing purchase flow * Fixed merging conflicts * Updated API scheme * Updated routes * Updated wait for wallet is ready for activation logic Fixed wallet purchased detection logic Increased waiting time when create and claim. * Checkout UI improvements * Added header to checkout view * MOB-2032 - Handle expired MPC wallet tokens (#559) * Created tests for auth tokens refresh flow * Handle tokens expired by removing mpc wallet * Fixed typo * Clear wallet associated data after removed * Created MPCWallets UI handler protocol * Created UI to ask to reconnect mpc wallet * Handle keys set is expired * Ask user for confirmationw hen mpc wallet expired * Log tokens lifetime * Restore mpc logs * Handle queueing of restore mpc wallets requests * Handle sudden token invalidation * Update restart functionality * Updated login flow navigation * Fixed preview target * Hide back button while activating * Store email in mpc wallet metadata * Create separate UI flow for reconnect flow * Setup reimport nav flow * Created remove mpc wallet confirmation pull up * Refactoring Removed change email option when reconnect * Check isMPCWalletEnabled to see if it is allowed to purchase mpc wallet * MOB-2045 - Implement UI to select to create UW during onboarding (#569) * Implemented UI to select purchase MPC wallet * Fetch MPC wallet price * Updated copies * MOB-2046 - Buy mpc wallet during onboarding (#571) * Implemented UI to select purchase MPC wallet * Fetch MPC wallet price * Adjusted UI and copies on enter UD credentials view * Prepare MPC card for purchase states * Implemented UI for UW card * Updated copies * Updated progress state when purchasing MPC wallet * Added UI for error state * Added confirmation email field for UD auth * Created step when user already has UW purchased * Fixed checkout screen background * MOB-2047 - Setup mpc wallet after purchase during onboarding (#572) * Implemented UI to select purchase MPC wallet * Fetch MPC wallet price * Adjusted UI and copies on enter UD credentials view * Prepare MPC card for purchase states * Implemented UI for UW card * Updated copies * Updated progress state when purchasing MPC wallet * Added UI for error state * Added confirmation email field for UD auth * Created step when user already has UW purchased * Fixed checkout screen background * Created PurchaseMPCWalletTakeoverCredentialsView * Created MPCWalletPasswordValidator * Localize UI * Create UI for PurchaseMPCWalletTakeoverRecoveryView * Created PurchaseMPCWalletTakeoverProgressView * Fixed target * Added email to already have wallet view * Added illustration to mpc recovery view * Implemented mpc takeover email verification * Finishing UI in takeover progress view * Handle try again action * Handle multiple failed attempts during takeover * Updated password validation UI * Finalise purchase flow * Fixed recovery screen copies * MOB-2051 - Purchase UW analytics (#573) * Project structure update Added analytics to ud auth view * Added analytics to purchase checkout view * Updated analytics for rest of the purchase views * Improved analytics logging * Fixed recovery screen copies * Update logging level * Code review updates * MOB-2052 - Purchase MPC wallet in app (#574) * Implemented UI to select purchase MPC wallet * Fetch MPC wallet price * Adjusted UI and copies on enter UD credentials view * Prepare MPC card for purchase states * Implemented UI for UW card * Updated copies * Updated progress state when purchasing MPC wallet * Added UI for error state * Added confirmation email field for UD auth * Created step when user already has UW purchased * Fixed checkout screen background * Created PurchaseMPCWalletTakeoverCredentialsView * Created MPCWalletPasswordValidator * Localize UI * Create UI for PurchaseMPCWalletTakeoverRecoveryView * Created PurchaseMPCWalletTakeoverProgressView * Fixed target * Added email to already have wallet view * Added illustration to mpc recovery view * Implemented mpc takeover email verification * Finishing UI in takeover progress view * Handle try again action * Handle multiple failed attempts during takeover * Updated password validation UI * Finalise purchase flow * Project structure update Added analytics to ud auth view * Added analytics to purchase checkout view * Updated analytics for rest of the purchase views * Improved analytics logging * Fixed recovery screen copies * Fixed recovery screen copies * Update logging level * Update purchase view model to new entities * Remove POC buy mpc entry point * Handle create wallet action * Handle already have wallet event and actions * Finish purchase in app flow * Purchase flow finalisation * Cleaning * MOB-2051 - Purchase UW analytics (#573) * Project structure update Added analytics to ud auth view * Added analytics to purchase checkout view * Updated analytics for rest of the purchase views * Improved analytics logging * Fixed recovery screen copies * Update logging level * Code review updates * Move regex to the top of the scope * Added feature flag to control mpc purchase availability * Fixed enter credentials scrolling issue * Fixed top padding * Do not send bootstrap code when not necessary * Updated copies * Added email query to claim mpc request * Handle case when email verification failed * Rename UW --------- Co-authored-by: rommex <roman@unstoppabledomains.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.