Commit Graph

798 Commits

Author SHA1 Message Date
Mohsen b005eb8181
feat!: add saved addresses to wallet settings (#20475) 2024-06-26 16:44:29 +03:30
Alexander e2e8afb7b1
WC signing/sending transactions flow (#20445)
* WC signing transactions flow

* Fixes

* Fixes

* Post-review fixes

* Removed leftover

* Post-review fixes

* Fixes

* Fixes

* Test fixes
2024-06-26 14:45:43 +02:00
Sean Hagstrom 256f3f8f24
feat!: add key pairs and accounts settings to wallet settings (#20464)
* tweak: use support blur colors for action drawer icons

* tweak: support blur colors for drawer-top icon

* tweak: support blur colors for account list inside keypair component

* tweak: use blur colors for missing-keypair bottom sheet actions

* feat: remove feature-flag for key-pairs and accounts inside wallet settings

* fix: ensure key-pairs-and-accounts settings are visible

* tweak: display key-pair rename screen as full-screen modal

* tweak: animate key-pair scanning screen as modal

* fix: do not allow user to rename key-pair to an existing key-pair name

* fix: ensure we visualise the validation error for key-pair name that is too long

* fix: ensure we can see the recovery-phrase suggestions when testnet-mode is active

* tweak: show recovery-phrase errors when keyboard is hidden

* fix: ensure we do not re-hash password

* fix: ensure we call `on-close` function when successfully handling biometrics auth

* fix: ensure we clear error states when editing the recovery-phrase input

* fix: use blur styles for standard authentication password input

* chore: add labels for qr validation

* tweak: handle display import-qr error and allow for re-scanning

* tweak: update blur background for all bottom-sheets

* chore: add feature-flag for import-all key-pairs button for missing key-pairs

* tidy: remove unused variable

* fix: ensure layout for android is correct when entering seed-phrase in testnet-mode

* fix: ensure we return the updated db when updating the db with backup key-pair

* tweak: coerce nil to empty string

* tweak: change validation error message for short key-pair name

* tweak: hide the options icon for the default key-pair inside key-pairs and accounts settings
2024-06-26 13:16:00 +01:00
Jamie Caprani 6931fd0052
chore(wallet/shell): minor fixes from design review (#20494)
* chore(wallet): make recent tab fullscreen for empty view

* chore(wallet): hide advanced button on send page

* chore(wallet): hide estimated fees when no routes found

* chore(wallet): update emoji icon to edit

* chore(wallet): update key pair placeholder to use keypair example

* chore(shell): feature flag saved address option in scanner
2024-06-26 02:05:19 -07:00
yqrashawn ead51b7e7c
feat: simplification of onboarding intro view (#20386)
* feat: simplification of onboarding intro view

Signed-off-by: yqrashawn <namy.19@gmail.com>

* feat: new onboarding illustration

* fix: add accessibility label

* fix: wrong navigation stack

Signed-off-by: yqrashawn <namy.19@gmail.com>

* e2e: updated sign in

* fix: onboarding nav stack after flow change

---------

Signed-off-by: yqrashawn <namy.19@gmail.com>
Co-authored-by: Yevheniia Berdnyk <ie.berdnyk@gmail.com>
2024-06-25 11:03:10 +08:00
Parvesh Monu 5ee5d70567
Show correct drawer message for pending community request (#20485) 2024-06-21 17:20:20 +05:30
Jamie Caprani 4e8f4698a6
chore(wallet): add missing keypair to wallet home cards (#20455) 2024-06-20 22:37:49 +02:00
Ulises Manuel f192648518
feat(wallet): Add account name, emoji and color validation (#20422)
* Fix extra `0` in create/edit account title input

* Validate name, color and emoji in account creation/edition screen

* Refactor sub

* Fix button disabled condition and placeholder
2024-06-19 11:25:46 -06:00
Volodymyr Kozieiev f761d87b2a
Long tap on route to lock value sent from this network (#20413) 2024-06-18 15:42:29 +01:00
Icaro Motta 24b77811d8
fix(profile)_: Fallback to old profile name after migration from v1 (#20412)
This is a byproduct of the investigation on issue
https://github.com/status-im/status-mobile/issues/20203, more specifically, to
double-check if v1 users have their display names shown correctly.

Closes https://github.com/status-im/status-mobile/issues/20203

This is the scenario used to reproduce the bugs this PR is solving:

1. Alice creates an account in v1 (branch release/1.20.x).
2. Alice had 1 friend to chat with, Carol.
3. Alice sends and receives at least one message from Carol.
4. Alice installs the new app (latest develop branch suffices).
5. Alice login and try to edit her profile, but her 3-word name is not displayed
   in the Settings > Edit Profile screen, nor in the Settings > Edit profile >
   Name input field.
6. Alice also opens her chat with Carol, but her name appears as a public key
   instead of her 3-word name she identifies herself with.

The solution presented here is to just fallback to Alice's 3-word name (name
field in the profile/contact app-db instance).

Areas that may be impacted

- Edit profile name.
- Name displayed in chats from the perspective of the sender who migrated from
  v1.

Steps to test

In order to test this PR, it's necessary to migrate from v1 to v2 using two
separate builds. The v1 build can be obtained in PR
https://github.com/status-im/status-mobile/pull/20123. v2 build can be any one
from develop from today, for example.
2024-06-17 18:25:05 -03:00
Sean Hagstrom dc335cc333
chore: Revise code for wallet settings (#20439)
* fix: use correct error message when displaying seed phrase as incorrect

* tidy: cleanup naming of events and effects

* tweak: show incorrect-seed-phrase error for any import error

* fix: show correct error message for incorrect private key

* chore: move import-private-key and import-seed-phrase namespaces

* chore: move encrypted-qr namespace

* chore: move scan-qr namespace

* tidy: rename key-pair to keypair inside for wallet settings

* tweak: use :open-modal navigation instead of :navigate-to-within-stack

* tweak: rename screen for importing missing key-pair by seed-phrase

* tidy: refactor code
2024-06-13 14:13:26 +01:00
mmilad75 e0c7ecc6df
No routes found error is displayed in case asset value is within max amount but not enough balance for fee #20148 (#20272) 2024-06-13 14:41:06 +02:00
yqrashawn 874906b11f
fix: face id toggle respect system face id permission (#20227)
Signed-off-by: yqrashawn <namy.19@gmail.com>
2024-06-13 09:28:07 +08:00
Mohsen af07205f20
[#19737] feat: edit a saved address (#20398) 2024-06-12 12:55:38 +03:00
Sean Hagstrom 6a7f04a5a8
feat(wallet-settings): Implement import missing key pair by private key (#20372)
* chore: update private-key validation

* chore: add native module bindings

* chore: add translation labels

* chore: add size-12 for password icon

* fix: ensure we use feature-flag namespace when using feature-flags

* fix: blur styles for icon-avatar in missing key-pairs

* fix: blur styles for accounts in missing key-pairs

* fix: blur styles for bottom-sheet

* fix: adjust blur background color for bottom-sheets

* chore: add support for private-keys for missing key-pair component

* chore: add definitions for events and effects

* feature: implement private-key import for missing key-pair

* tidy: remove debugging

* tidy: distinguish to import for missing-keypair

* tidy: remove unneeded function

* tidy: refactor layout to use floating-button-page

* tidy: remove unused effect bindings

* tidy: refactor event bindings for importing-missing-keypair-by-private-key

* tweak: add error logging

* tidy: refactor helper to re-frame utils

* tweak: group partially operable and fully operable keypairs together

* chore: add documentation for call-continuation

* tweak: refactor documentation

* tweak: throw exception when not given a compatible continuation

* fix: update least-operability when making key-pair fully operable
2024-06-11 13:05:10 +01:00
Mohamed Javid 75c8437cc5
feat(wallet): Add network preferences selection for saved address (#20364)
This commit:
- adds a feature to add network preferences for saved addresses while saving
- updates the network preferences in "Share save address" to show the address and color of the saved address
- fixes the screen qualifier for the settings screen when navigating to wallet settings

Signed-off-by: Mohamed Javid <19339952+smohamedjavid@users.noreply.github.com>
2024-06-06 23:01:12 +05:30
Sean Hagstrom d7530dfbee
Feature: Implement import of key-pair with recovery phrase inside wallet settings (#20181)
* fix: ensure missing key pairs scroll with list

* chore: add translations for labels

* chore: promisify validate-mnemonic native module function

* chore: add events for validating seed-phrases and making key-pairs fully operable with seed-phrase

* chore: define re-usable effects for validate-mnemonic and make-seed-phrase-keypair-fully-operable and import-keypair-by-seedphrase

* tweak: refactor error handling logic when importing key-pair by seed-phrase

* tweak: handle vectors and functions between events and effects

* tweak: refactor recover-phrase form to support custom title, children, and navigation icon

* tweak: add support for accessing input-ref in recovery-phrase form

* tweak: always mask seed-phrase when passing to render-controls

* feature: add initial screen for importing key-pair with seed phrase

* tweak: conditionally render keypair context tag inside recovery-phrase form

* tidy: rename on-input-ref to ref

* tidy: remove unused property

* tidy: refactor to use case expression

* tidy: format
2024-06-06 10:33:34 +01:00
Shivek Khurana 379ba87c16
🤝 🔁 [19834] Add dapp connection flow with a basic design (#20204) (#20325)
* 🔳 QR on success not being called

- IDK why, trying things out

* 🙃 Stupid of me

- My handler was not being called because I wrote the code in a
different QR scanner

*  Approval screen taking shape

* 🧹 Lint fix

* 🎛️ Wallet connect session screen shows up

- Hard coded the first account
- The data item component doesn't support networks or accounts yet
- The quo category component cannot show a data-item yet
- Connected accept and decline button

* 🧰 Fix review issues

* 🔨 Fix lint

* 🔧 Rename event and move dispatch

* 🔧 Fix lint

* 🎏 Add ff for wc scanner

- Bring back missing event
2024-06-05 16:17:19 +05:30
Brian Sztamfater 5bad8de886
feat(swap): implement select asset to pay screen (#20269)
Signed-off-by: Brian Sztamfater <brian@status.im>
2024-06-04 17:41:35 -03:00
Mohamed Javid 577dc16188
feat(wallet): Add new saved address from wallet settings (#20304)
This commit adds flow for adding new saved addresses from wallet settings

Signed-off-by: Mohamed Javid <19339952+smohamedjavid@users.noreply.github.com>
2024-06-04 23:49:16 +05:30
Shivek Khurana 00d288fb94
Revert "🤝 [19834] Add dapp connection flow with a basic design (#20204)" (#20323)
This reverts commit 6ea39b5096.
2024-06-04 18:52:38 +05:30
Shivek Khurana 6ea39b5096
🤝 [19834] Add dapp connection flow with a basic design (#20204)
* 🔳 QR on success not being called

- IDK why, trying things out

* 🙃 Stupid of me

- My handler was not being called because I wrote the code in a
different QR scanner

*  Approval screen taking shape

* 🧹 Lint fix

* 🎛️ Wallet connect session screen shows up

- Hard coded the first account
- The data item component doesn't support networks or accounts yet
- The quo category component cannot show a data-item yet
- Connected accept and decline button

* 🧰 Fix review issues

* 🔨 Fix lint

* 🔧 Rename event and move dispatch

* 🔧 Fix lint
2024-06-04 18:26:14 +05:30
Lungu Cristian 5193f981f8
Add wallet connect signing flow (#20199)
* feat: added session request event & fx

* Added signing flow

* fix: addressed @ilmotta's review comments

* fix: addressed @shivekkhurana's review comments

* fix: addressed @ilmotta's review comments

* fix: converting typed data to clj and back to JSON
2024-06-04 13:30:26 +03:00
Mohsen 541b2e0909
[#20165] feat: import a missing key pair by scanning QR code (#20280) 2024-06-03 10:33:52 +03:00
Ajay Sivan 039ad8d162
Buy assets drawer - one-time & recurrent tabs (#20063) 2024-05-31 05:39:18 -07:00
Parvesh Monu 4ff73a8a6a
Show proper error when bio metric fails (#20233) 2024-05-31 13:13:00 +05:30
Mohamed Javid aa159f53ef
feat: Saved addresses - Display list, Show options and Remove (#20221)
This commit:
- Adds feature flag for saved addresses
- Displays the list of saved addresses in wallet settings
- Shows address options on tap of any saved address
- Adds the ability to remove saved address
- Refactors saved addresses data structure in app-db

Signed-off-by: Mohamed Javid <19339952+smohamedjavid@users.noreply.github.com>
2024-05-31 00:51:51 +05:30
Mohsen e04c7f449f
[#20035] feat: import missing key pair by scanning QR code (#20144) 2024-05-30 22:07:33 +03:00
Alexander c03d91bcb0
Connected dApps: a list with empty state, plus button, etc etc / fetching dApps / disconnecting dApps (#19943)
* Connected dApps screen with empty state and list of dApps and the ability to disconnect dapps

* Fix

* Smaller style fix

---------

Co-authored-by: Lungu Cristian <lungucristian95@gmail.com>
2024-05-30 17:47:30 +03:00
flexsurfer aa1a306294
Wrong bottom sheet for channel in communities without permissions #20031 (#20212) 2024-05-30 14:20:57 +02:00
Mohsen de71df811b
[#19921] feat: remove key pair action (#20002) 2024-05-27 15:58:39 +03:00
Parvesh Monu 366fb7b174
Show parsed bridge messages (#20058) 2024-05-27 15:41:47 +05:30
Sean Hagstrom 60ef4fab4b
Implement display of missing key pairs in wallet settings (#20094)
* fix: ensure the keypairs use blur for their theme

* fix: allow for container-style to be passed to standard-title component

* chore: add translations for for missing-keypair labels

* tweak: add support for missing-keypair type for drawer-top component

* tweak: add initial implementation of missing-keypair list-item component

* tweak: add initial implementation of missing-keypairs list component

* feature: add initial implementation of displaying missing key-pairs

* tweak: update missing-keypair list-item to support blur, light, and dark mode

* chore: add missing-keypair list-item preview

* chore: add missing-keypairs preview

* chore: decode :operable key in account to be keyword

* tweak: remove unneeded keyword decoding

* tweak: update drawer-top component to use keypair and stored field

* tidy: revert change for checking for not default-keypair in actions menu
2024-05-22 18:30:32 +01:00
Ajay Sivan e5ab94f1b2
Wallet/Approval Label Component (#20117) 2024-05-22 00:59:46 -07:00
Omar Basem ff82d9c39e
fix: update confirm button copy on input amount screen(#20122)
* fix: update confirm button copy on input amount screen(#20122)
2024-05-22 09:34:55 +04:00
Ajay Sivan f7163c748b
Use data from API to populate the buy assets sheet (#20078)
Remove unused code & resources
2024-05-21 04:45:07 -07:00
Omar Basem 34cf65bfc9
fix: overlapping send details (#20102)
* fix: overlapping send details (#20102)
2024-05-21 11:19:22 +04:00
Mohsen 389a730eff
[#19946] feat: add key pair QR code view (#20073) 2024-05-20 19:35:51 +03:00
Omar Basem eb1db20161
chore: rename backup screen (#20077)
chore: rename backup screen (#20077)
2024-05-20 09:29:15 +04:00
Omar Basem 624593ec35
chore: rename opt to oeth (#19974)
chore: rename opt to oeth (#19974)
2024-05-17 22:23:51 +04:00
Parvesh Monu 052813e30e
Hide empty categories and categories that include only hidden channels 2024-05-16 15:47:50 +05:30
Brian Sztamfater 0145429852
feat: support edge case flow in the wallet send flow when token is not available on receiver preferred networks (#19674)
feat: implement wallet send flow edge case when selected token is not supported on receiver's preferred networks

Signed-off-by: Brian Sztamfater <brian@status.im>
2024-05-15 14:11:26 -03:00
Sean Hagstrom f7505db6fd
Implement network settings for wallet settings (#19995)
* fix: resolve warning about using subscription inside a lazy seq

* fix: avoid schema error when we do not have a port for the media server

* chore: add feature-flag for network-settings inside wallet-settings

* chore: add testnet mode label

* chore: add testnet labels for bottom-sheets

* chore: add label for changing testnet mode

* feature: add initial network-settings screen to wallet-settings

* test: add test for sub

* tidy: rename function to hide-bottom-sheet

* tweak: add info-box for testnet mode

* tidy: testnet-mode bottom-sheet

* tidy: use reduce-kv instead of map & into

* tidy: use noun naming convention for function creating options for settings

* tweak: add support for displaying testnet-mode status on each wallet network

* chore: add translation for labels referencing testnet-mode and sepolia
2024-05-15 10:28:25 +01:00
Mohsen 6be1adb40e
[#19917] feat: rename keypair from wallet settings (#19939) 2024-05-13 17:07:33 +03:00
Nikolay 2618a55dbc
[#18817] Import private key: UI for key pair name (#19747) 2024-05-13 11:39:42 +02:00
Sean Hagstrom 4f0a49f7bf
Add screen for key-pairs and accounts inside wallet settings (#19912)
* chore: add "key pairs and accounts" label

* chore: feature flag wallet-settings

* tidy: extact navigate-back function into static defn

* wip: add initial keypairs and accounts list view to wallet settings

* tweak: wire-up initial action menu for key-pairs

* tidy: extract key-pair container styles into style namespace

* tweak: fix dark background for key-pair and account settings

* tidy: refactor on-press handler for key-pair options

* fix: move feature-flag usage to settings screen instead of settings items definition

* tidy: remove unneeded key props

* tidy: clean up de-structuring and passing of props

* tidy: use keep with when expressions instead of filter and map expressions

* tidy: rename the wallet-settings feature flag

* tweak: rename and add feature-flags for mobile wallet settings

* tweak: use scrollview for feature-flags and add spacing between feature-flag groups

* tweak: adjust the way feature-flags are displayed in groups

* tidy: remove unneeded prop

* tidy: use bottom-inset for padding key-pair and accounts list

* tidy: change `filterv` to `filter`

* tidy: use subscription for building account-props

* tidy: use subscription to build the entire keypair-account

* tweak: use key-pair type to determine default key-pair

* tidy: rename component to settings-category-view

* tidy: use assoc instead of merge

* tidy: extract function from subscription

* test: add tests for formatting key-pairs and accounts for wallet settings

* tweak: use `match?` instead of `=`

* tidy: use `swap!` without anonymous functions
2024-05-10 10:53:35 +01:00
Brian Sztamfater 07fb3610d1
chore: add wallet connect library (#19758)
Signed-off-by: Brian Sztamfater <brian@status.im>
2024-05-08 05:51:45 -03:00
Lungu Cristian 161ba2713f
Change password inside new settings (#19474)
* feat: added change-password screen

Signed-off-by: Lungu Cristian <lungucristian95@gmail.com>

* fix: pw verification error not shown

Signed-off-by: Lungu Cristian <lungucristian95@gmail.com>

* feat: added changing password with confirmation and loading

Signed-off-by: Lungu Cristian <lungucristian95@gmail.com>

* fix: adjusted flow

Signed-off-by: Lungu Cristian <lungucristian95@gmail.com>

* fix: added minimum waiting time when loading

Signed-off-by: Lungu Cristian <lungucristian95@gmail.com>

* ref: moved events to change-password

Signed-off-by: Lungu Cristian <lungucristian95@gmail.com>

* fix: added styles where missing

Signed-off-by: Lungu Cristian <lungucristian95@gmail.com>

* ref: moved header out

Signed-off-by: Lungu Cristian <lungucristian95@gmail.com>

* ref: moved forms into separate namespaces

Signed-off-by: Lungu Cristian <lungucristian95@gmail.com>

* fix: linter promesa alias issue

Signed-off-by: Lungu Cristian <lungucristian95@gmail.com>

* feat: added password-tips quo-component

Signed-off-by: Lungu Cristian <lungucristian95@gmail.com>

* fix: validation message

Signed-off-by: Lungu Cristian <lungucristian95@gmail.com>

* fix: removed bottom-sheet event

Signed-off-by: Lungu Cristian <lungucristian95@gmail.com>

* removed temp file

Signed-off-by: Lungu Cristian <lungucristian95@gmail.com>

* fix: addressed review comments

Signed-off-by: Lungu Cristian <lungucristian95@gmail.com>

* fix: addressed @seanstrom's review comments

Signed-off-by: Lungu Cristian <lungucristian95@gmail.com>

* fix: address @ilmotta's review comments

Signed-off-by: Lungu Cristian <lungucristian95@gmail.com>

* fix: addressed @vkjr's review comments

Signed-off-by: Lungu Cristian <lungucristian95@gmail.com>

* fix: buttom button alignment with keyboard

Signed-off-by: Lungu Cristian <lungucristian95@gmail.com>

* fix: addressed review comments

Signed-off-by: Lungu Cristian <lungucristian95@gmail.com>

* fix: keyboard behavior

Signed-off-by: Lungu Cristian <lungucristian95@gmail.com>

* fix: navigation to loader

Signed-off-by: Lungu Cristian <lungucristian95@gmail.com>

* fix: use-theme usage

* fix: button alignment due to alert banner

---------

Signed-off-by: Lungu Cristian <lungucristian95@gmail.com>
2024-05-07 17:38:16 +03:00
flexsurfer 45129b8244
Bring the seedphrase backup flow to the new settings #19554 (#19887) 2024-05-07 13:44:31 +02:00
Brian Sztamfater 355e144ef7
refactor: suggested routes rendering (#19768)
Signed-off-by: Brian Sztamfater <brian@status.im>
2024-05-03 13:18:14 -03:00