986 Commits

Author SHA1 Message Date
Michał Cieślak
0f81f7922f Storybook(OnboardingLayout): mnemonic auto-fill fixed 2025-02-11 12:44:46 +01:00
Cuteivist
289c14aefd
feat: Remove beta popup (#17264)
* feat: Remove beta popup

* chore(@e2e): remove beta consent popup

---------

Co-authored-by: Anastasiya <anastasija.ig@gmail.com>
2025-02-11 10:18:16 +01:00
Lukáš Tinkl
bc5da78180 fix(Onboarding): Incorrect Navigation Flow for 'Use existing phrase' Option
- changes the order of the "Create profile on empty Keycard" flow to
match Figma (seedphrase -> create pin -> add key pair)
- fixup tests to match the order

Fixes #17216
2025-02-10 17:20:56 +01:00
Michał Cieślak
7649ad45ca feat(Onboarding): KeycardExtractingKeysPage excluded from KeycardEnterPinPage
Closes: #17205
2025-02-07 17:24:20 +01:00
Igor Sirotin
6fe5330e5b
fix: use mnemonic as BIP-39 string (#17246) 2025-02-07 15:14:52 +00:00
Lukáš Tinkl
a9066806b5 chore(Onboarding): Remove all "Reload keycard state" buttons
- the manual "I've insterted a keycard" reload buttons are no longer
needed; we can rely solely on the HW keycard state
- when doing a "Restart", also reset the internal mock/store states

Fixes #17234
2025-02-07 13:10:58 +01:00
Michał Cieślak
54ff857f3d feat: LoginScreen - ability to dismiss biometrics popup 2025-02-06 19:20:38 +01:00
Michał Cieślak
d26991bc72 feat: LoginScreen biometrics integration using Keychain
Required for #17085
2025-02-06 19:20:38 +01:00
Michał Cieślak
94dbdc450f chore: Keychain api adjusted 2025-02-06 19:20:38 +01:00
Lukáš Tinkl
2c0bcd67af chore(EnterSeedPhrase): improve the SB page
- add a convenience Paste button
- make it possible to validate the seedphrase
2025-02-06 14:56:07 +01:00
Lukáš Tinkl
c20662e6a4 fix(EnterSeedPhrase): fix backspace or delete
- fields can be cleared by selecting a word and pressing backspace or
delete

Iterates: #17105
2025-02-06 14:56:07 +01:00
Lukáš Tinkl
241f21e4ea fix(EnterSeedPhrase): focus last input field after paste
Iterates: #17105
2025-02-06 14:56:07 +01:00
Cuteivist
79432938b2
feat(wallet): Update recipient data in send sign modal (#17164) 2025-02-06 10:08:54 +01:00
Lukáš Tinkl
db7a359a49 fix(PasswordView): UI fixes and alignments with latest Figma
- display validation messages closer to the input fields
- warn about pass too long, info for "passwords match"
- fix an actual bug when two too long passwords would be considered as
"valid" by the UI
- various fixes and UX improvements for the respective SB pages

Iterates: #17101

To fully fix the above issue, we need a more complete Figma design,
depicting the various error scenarios
2025-02-05 14:35:26 +01:00
Lukáš Tinkl
09bdb955e9 feat(Onboarding): implement the KeycardFactoryReset flow
- integrate it into the UI and StoryBook
- a new keycardState is introduced: `FactoryResetting` (matching the
backend)
- a new store method introduced: `startKeycardFactoryReset()`

Fixes: #17094
2025-02-04 22:57:04 +01:00
Jonathan Rainville
bf5de4087e
feat: Integrate new logins flows happy paths (#17137)
* feat(login): integrate basic login flows happy paths

Fixes #17137

* fix: rebase issues and pr comments

* chore: switch status-keycard-go to master branch

* fix: tests

---------

Co-authored-by: Igor Sirotin <sirotin@status.im>
2025-02-04 15:08:13 +00:00
Jonathan Rainville
2d549f42be
feat: Implement the keycard flows for the new onboarding (#17127)
* feat(onboarding): integrate all keycard flows for the new onboarding

Fixes #17079

* chore: bump submodules to merged versions

* fix: rebase fixes

* chore: bump status-keycard-go to use Go 1.21

* feat: add FactoryResetting state

* chore: minor fixes

* add KeycardRemainingPinAttempts

* minor fixes

* minor fixes

---------

Co-authored-by: Igor Sirotin <sirotin@status.im>
2025-02-04 13:22:05 +00:00
Igor Sirotin
6e1ef46ef7
feat: Keychain QML Item (#17166)
* feat: Keychain QML component

* fix: non-mac builds

* test

* feat: async api

* chore: gitignore statusq android gradle

* Keychain API adjusted, Storybook page unified for real/mocked biometric popup

* fix: proper success/error of getCredential

* chore: format file

* feat: Keychain emit status

* feat: Keychain status

* feat: cancel auth

* fix: various os-specific issues

* chore: address pr comments

* chore: update mocked biometrics popup

* chore: back to LAPolicyDeviceOwnerAuthentication

* cleanup
2025-02-04 12:26:33 +00:00
Khushboo-dev-cpp
19c6e910d8 feat(@desktop/wallet): Wrtie Unit tests for SimpleSendModal, SimpleTransactionFees and SendModalFooter
fixes #17123
2025-02-03 16:20:13 +01:00
Dario Gabriel Lipicar
55e96bbd05 chore: extract rpcProviders as independent model 2025-01-31 12:11:35 -03:00
Dario Gabriel Lipicar
051b563f9f feat(network): integrate new rpc providers api 2025-01-31 12:11:35 -03:00
Michał Cieślak
e46b8e1f09 Onboarding: Unblock with seedphrase flow for login
Closes: #17142
2025-01-31 14:57:45 +01:00
Michał Cieślak
944568eaf7 Onboarding: LoginScreen location adjusted
- LoginScreen SB page simplified
- OnboardingLayoutPage - settings introduced for handier testing
- LoginScreen moved from OnboardingLayout to OnboardingFlow, making first flow's page bound to model content (instead of relying on check during initialization)
- UnblockWithPukFlow removed from OnboardingLayout (now it's used only in OnboardingFlow)
- Login error/success processing extracted from LoginScreen to OnboardingLayout
- small bug fixed in Utils::objectTypeName

Closes: #17160
2025-01-31 13:54:49 +01:00
Lukáš Tinkl
5cf9e4f838 feat(Post Onboarding): Introduce yourself popup
- popup displayed only ever once
- triggered when section is switched to anything else than wallet
(default for new users) or settings (profile visible first anyway)
- add the popup to SB

Fixes #17027
2025-01-30 18:00:18 +01:00
Lukáš Tinkl
df741d6260 feat(Onboarding): implement the new UnblockWithPukFlow
- integrate the PUK unblock flow into the Onboarding and Login screen
- added a dedicated SB page for it
- remove the `Locked` keycard state everywhere in favor of `BlockedPIN`
and `BlockedPUK`
- fix the various "Locked" buttons, based on the context and the state
of the keycard

Fixes: #17092
2025-01-29 12:38:43 +01:00
Lukáš Tinkl
2de4d3a19e feat(KeycardEnterPukPage): implement a dedicated "Enter PUK" page
- to be used in the "Unlock with PUK" flow
2025-01-29 12:38:43 +01:00
Michał Cieślak
cf85dea32d Onboarding lost keycard - basic tests
Closes: #17095
2025-01-29 11:00:16 +01:00
Michał Cieślak
fb9cd351c4 Onboarding: lost keycard flow components added 2025-01-29 11:00:16 +01:00
Lukáš Tinkl
4b8ed6c7a1 chore(Onboarding): implement getModelFromEnum()
- and use it in the SB pages to automatically get all values from an
enum and use them as a ready made model, instead of spelling the values
individually/manually
2025-01-29 09:20:24 +01:00
Lukáš Tinkl
e2f9dab33b fix(Onboarding/SyncProgressPagePage): fixup back buttons
- SyncProgressPagePage: enable the back button only in the failed state
- SyncProgressPagePage: fix the "Try again" and "Back" button to go to
the Scan QR step; the connection code is disposable and can't be used
again anyway
- adjust the respective SB pages to reflect the correct enum values
2025-01-29 09:20:24 +01:00
Lukáš Tinkl
2ec862231a feat(StatusButton): add an outline variant
- only for `StatusButton` as for the `StatusFlatButton` it's not desired
- also use defined metrics for padding/spacing
- add a QML test

Fixes #17124
2025-01-28 11:34:30 +01:00
Cuteivist
28690379e1
feat: Simple send modal recipient view (#17096)
* feat: Simple send modal recipient view

* feat: Handle duplicate entries in recent recipient view
2025-01-27 17:35:59 +01:00
Khushboo Mehta
4b2457a17b feat(@desktop/wallet): Adapt invocations to New Simple Send Modal
fixes #17023
2025-01-27 15:50:32 +01:00
Alex Jbanca
e60cf57831 Revert "feat: hide mercuryo"
This reverts commit 22c4bb2846c2a88f79ccb326fbbb885ead077d41.
2025-01-27 15:52:10 +02:00
Lukáš Tinkl
acb24c9e7b fix(KeycardCreateProfileFlow): swap the order of PIN and Seed pages
- first Create the PIN, then backup or enter the seed phrase
- fix and simplify the tests to reflect the reality; we are always
creating a PIN here since it's an empty keycard
2025-01-24 15:27:07 +01:00
Alex Jbanca
2efe0c199d perf(SwapModal): improve the performance on tokenSelectorAdaptor 2025-01-24 15:19:41 +02:00
Khushboo Mehta
5793204e01 feat(@desktop/wallet): Integrates the new sign model into the simple send
fixes #17060
2025-01-24 13:51:59 +01:00
Khushboo Mehta
bb0908021e feat(@desktop/wallet): New Send Sign Modal
fixes #16708
2025-01-24 13:51:59 +01:00
Khushboo Mehta
e8b03e8b7a feat(@desktop/wallet): Filter out community owner and master tokens from single network send modal 2025-01-24 09:40:21 +01:00
Lukáš Tinkl
638676ed0b feat(Onboarding) Implement new Login screen
- implement the new UI and frontend logic of the Login screen
- integrate it (as a separate page) into the OnboardingLayout
- add SB pages
- add an integration QML test
- add some TODOs and FIXMEs for the existing and new external flows,
which will be covered separately in followup PRs

Fixes #17057
2025-01-23 17:41:43 +01:00
Alex Jbanca
b6bc5d1e29 feat(dapps): Adding dapp metrics
closes #16912

Sending the dapps events to mixpanel

| Event Name | Properties | Possible Values | Notes |
| --- | --- | --- | --- |
| dapps-health | state | - wc_available
- wc_unavailable
- chains_down
- network_down
- pair_error
- connection_error
- sign_error |  |
|  | error |  | string description |
| dapps-navigation | flow | - dapps_list_opened
- connect_initiated
- disconnect_initiated
- pair_initiated |  |
|  | connector | - wallet_connect
- browser_connect |  |
| dapps-connection | flow | - proposal_received
- proposal_accepted
- proposal_rejected
- connected
- disconnected |  |
|  | networks | networks[string] - array of networks | Array of proposed or connected networks |
|  | methods | methods[string] - array of methods | Array of proposed methods |
|  | dapp | dapp uri |  |
|  | connector | - wallet_connect
- browser_connect |  |
|  | isSiwe | boolean |  |
| dapps-sign | flow | - sign_received
- sign_accepted
- sign_rejected |  |
|  | connector | - wallet_connect
- browser_connect |  |
|  | method | - personal_sign
- eth_sign
- eth_signTypedData_v4
- eth_signTypedData
- eth_signTransaction
- eth_sendTransaction |  |
|  | dapp | string - dapp uri |  |
|  | chainId | int - chain id |  |
2025-01-22 11:40:00 +02:00
Dario Gabriel Lipicar
24a18ea804 feat: integrate Base chain 2025-01-21 10:20:57 -03:00
Jonathan Rainville
a6e6546a08
Add a "Dismissed contact requests" tab in the Contacts panel (#17021)
* chore(ContactPanel): add tooltips to contact panel buttons

* feat(contacts): add a tab for dismissed contacts and a button to undo

Fixes #16844

Adds a tab in the Messaging>Contacts page that shows the dismissed contact requests.
it has a button to undo the rejection. That is simply a call to accept the old contact request, which then makes the two users mutual contacts
2025-01-14 10:18:31 -05:00
Michał Cieślak
07640e4bd9 Onboarding: metrics handling externalized 2025-01-14 10:49:42 +01:00
Michał Cieślak
2cee665734 Onboarding: keycard pin-related delays parametrized
Closes: #17031
2025-01-14 10:49:42 +01:00
Michał Cieślak
c595e83605 KeycardAddKeyPairPage: built-in timeout removed 2025-01-14 10:49:42 +01:00
Michał Cieślak
ad1a1da369 SyncProgressPage: built-in timeout removed 2025-01-14 10:49:42 +01:00
Michał Cieślak
ec8d84b342 Onboarding: startKeypairTransfer called properly in create profile on keycard flow
Closes: #17030
2025-01-14 10:49:42 +01:00
Michał Cieślak
01dfec63c8 Storybook(OnboardingLayout): Key pair and sync states exposed, helper actions made contextual
Closes: #17032
2025-01-14 10:49:42 +01:00
Lukáš Tinkl
2b0179f936 fix(Onboarding): enable the network checks by default 2025-01-14 10:49:42 +01:00