Commit Graph

7351 Commits

Author SHA1 Message Date
Lukáš Tinkl 2739d2cf68 feat(CountdownPill): implement a countdown pill component
- shows the remaining time until expiration with the circular progress
bar and a tooltip
- configurable timestamp and timeout in seconds (between 5 min and 7
days)
- add the respective storybook page
2024-09-20 09:47:10 +02:00
Lukáš Tinkl 02066d098d feat(StatusCircularProgressBar): add a circular progress bar
- based on QML Canvas
- visualizing progress value (0..1) on a circle with 2 configurable
colors
2024-09-20 09:47:10 +02:00
Lukáš Tinkl 0c37700d52 chore(IssuePill): add a Primary type
- wrap the icon in a Loader and make it configurable
- add a storybook page with controls allowing to explore the various
types and config options
2024-09-20 09:47:10 +02:00
Jonathan Rainville 3f8dfee3cd
refactor(community_tokens): only fetch holders when going to the page (#16308)
* refactor(community_tokens): only fetch holders when going to the page

Fixes #16307

Instead of fetching community token holders each time members change, we fetch when the page for the token is opened.
It shows a small loading text then the resulting holders.
If the list is already available (fetched previously, we show it directly).
There is still the timer to refresh the list if you stay on the page.

* add loading property to storybook
2024-09-19 16:32:38 -04:00
Sale Djenic ea8827ec97 fix: wallet connect - sake.lido.fi dApp - staking transaction gets stuck
Fixes #16096
2024-09-17 19:39:32 +02:00
Dario Gabriel Lipicar ff45e76782 fix: use proper networks model for detection of offline chain providers 2024-09-16 18:00:33 -03:00
Anastasiya Semenkevich 7914688769 chore: add object names to actions 2024-09-16 17:20:36 +03:00
Anastasiya Semenkevich 2949e5ccd4 chore: group chat e2e test is fixed 2024-09-16 17:20:36 +03:00
Cuteivist 7cd2ed888c
Fix/remove send collectibles model 16328 (#16332)
* fix(wallet): Remove collectibles nested model

* fix(wallet): Remove collectible controller from send module
2024-09-16 13:21:25 +02:00
Anastasiya Semenkevich 8bbe17b613 chore: search box for searchable collectibles panel 2024-09-13 17:44:49 +03:00
Lukáš Tinkl 0c6a602336 [StatusQ] Move StyledTextField to StatusQ
- and rename it and its usages to StatusTextField
- remove a couple of related and unused components

Fixes #16296
2024-09-13 16:40:47 +02:00
Cuteivist 69605f5965
fix: Use prefixes for address copy (#16230) 2024-09-13 14:19:26 +02:00
Sale Djenic 8dc067e0c4 feat: fees update integration after calculating the initial route 2024-09-12 19:52:32 +02:00
Lukáš Tinkl c5598d9ff9 chore(StatusMemberListItem): refactor to use ItemDelegate
- simpler, standard property based API
- much lighter than deriving from the heavy StatusListItem
- should reduce RAM usage significantly, esp. with large communities

Iterates #11059
2024-09-12 15:04:22 +02:00
Anastasiya Semenkevich 9050459ee8 chore: add object name for collectibles delegates 2024-09-12 09:53:42 +03:00
Sale Djenic c4363be418 feat: fees update integration after calculating the initial route 2024-09-11 14:43:19 +02:00
Sale Djenic c515a963e3 chore: remove old router logic
Closes #16201
2024-09-11 14:43:19 +02:00
Cuteivist ff9f272295
fix: Apply custom asset / collectible order (#16227) 2024-09-11 14:00:25 +02:00
Michał Cieślak 77fd4e78eb GifStore excluded from shared root store, StatusChatInput made indepedent from singeton stores
Closes: #16253
2024-09-11 11:26:30 +02:00
Michał Cieślak 9f94940a70 getSelectedTextWithFormationChars moved from store to utils and deduplicated 2024-09-11 11:26:30 +02:00
Michał Cieślak 3f4715ccdd Unused hex2Dec, hex2Eth and hex2Gwei removed from shared RootStore 2024-09-11 11:26:30 +02:00
Lukáš Tinkl 0a1ebb69bd fix(StatusSeedPhraseInput): accept a common prefix suggestion
- fix for a corner case prob when there was a valid seedphrase word
(e.g. cat) that is at the same type a prefix for other valid suggestions
(e.g. category, catalog, ...); it was imposible to select it using Enter
key or mouse click from the suggestions popup at the last field
- add a QML regression test for this issue
- use standard subcomponents (StatusDropdown, StatusListView) reducing
code duplication and unifying UI/UX

Fixes #16291
2024-09-10 16:00:40 +02:00
Alexandra Betouni ce525890eb fix[StatusChatMenu]: updated menu options as per designs
Closes #13393
2024-09-10 14:22:33 +02:00
Cuteivist e87a4f947e
feat: Show send error message inside the SendModal (#16258) 2024-09-09 13:29:40 +02:00
Lukáš Tinkl d37341caee fix(DAppSignRequestModal): correct wallet account color
- we are getting a colorId, so convert it

Fixes #16094
2024-09-06 16:19:59 +02:00
Lukáš Tinkl e58ae2c213 feat: Add external link to download extension plugin
- add a local popup with selection between "Status Connector" (external
link to Chrome Store) or "Wallet Connect" (the old flow involving
inputting the WC URI)
- simplify DAppsListPopup to use StatusDropdown to reduce code
duplication
- adjust SB and QML tests

Fixes #16111
2024-09-05 11:22:52 +02:00
Michał Cieślak b8fbeb157f CollectiblesSelectionAdaptor: use default token icon as a fallback 2024-09-05 08:55:15 +02:00
Michał Cieślak 204d72cd40 TokenSelectorNew: workaround for QTBUG-62411, minor sizing fixes 2024-09-05 08:55:15 +02:00
Michał Cieślak d82499fd7b AssetSelector added
This component is simpler version of TokenSelector, composed of the same
basic componets, useful when only assets are subject of selection.

Closes: #16234
2024-09-05 08:55:15 +02:00
Michał Cieślak 01a24e1b19 TokenSelectorNew decomposed into smaller, reusable subcomponents 2024-09-05 08:55:15 +02:00
Michał Cieślak afd16d6f6c TokenSelectorButton excluded from TokensSelector, sizing issues fixed 2024-09-05 08:55:15 +02:00
Lukáš Tinkl 6b8702b0b2 fix(StatusNavigationListItem): unbreak hovering over settings menu items
- fixes regression when hover wouldn't work if the menu item contained a
beta tag

Fixes #16263
2024-09-04 18:16:15 +02:00
Anastasiya Semenkevich 9598e9a44c qml: new object names for token selector panel 2024-09-04 16:16:10 +03:00
Cuteivist 186b5f8798
fix: Update account only when networks did change (#16229) 2024-09-04 06:32:07 +02:00
Cuteivist f1904d9ef8
fix: Reset collectible details after exiting details page (#16231) 2024-09-04 06:29:31 +02:00
Lukáš Tinkl 5cf4592c3b fix: Slippage Selector Issues
- add various error/warning messages according to Figma (where it makes
sense)
- letters or more than 2 decimals are caught by the internal validator
so those combinations are impossible to enter
- fix marking the custom value as (in)valid
- fix selecting "Use default" after typing a custom value
- fix resetting to predefined value after typing a custom value that
matches one of the predefined ones
- reject typing thousands separator
- add regression QML tests for the above fixes

Fixes #15017
2024-09-03 17:36:48 +02:00
Lukáš Tinkl 9d9fb69e3b feat(StatusEmojiPopup): reimplement around C++ EmojiModel
- the new C++ EmojiModel provides a simple wrapper around the existing
JSON to facilitate a faster access and to be able to search/filter in
QML using SFPM
- no more nested GridViews inside Repeaters
- get rid of emoji manipulation and search/filter using JavaScript
- included the C++ script to generate the emojiList.js
2024-09-03 10:19:54 +02:00
Lukáš Tinkl 19e0be07d8 feat: Upgrade emoji selection to support latest emojis
- upgrade to latest TWEmoji 15.1.0 from
https://github.com/jdecked/twemoji (the original twemoji is abandonware
now)
- create new EmojiJSON metadata from https://github.com/milesj/emojibase
- removed unused 26x26 assets
- add storybook page for StatusEmojiPopup

Fixes #8979
2024-09-03 10:19:54 +02:00
Cuteivist 70421a0454
fix: Correctly display manage tokens icons (#16228) 2024-09-03 06:07:03 +02:00
Michał Cieślak 9c4e1a8fe9 SubmodelProxyModel removed
Closes: #15825
2024-09-02 20:20:10 +02:00
Michał Cieślak 7c24d19241 Usages of SubmodelProxyModel migrated to ObjectProxyModel 2024-09-02 20:20:10 +02:00
Khushboo Mehta b8f41e35c4 feat(@desktop/wallet): Buy Mercuryo flow - Improvements
fixes #16041
2024-09-02 16:51:16 +02:00
Lukáš Tinkl 7c184f3500 fix(StatusChatInput): set max number of images to 6 to align with mobile
- re-evaluate the validators to be able to hide the warning after 3
seconds (the validators won't let the user select/paste an invalid
image; it's just the warning bubble that persisted)
- some small cleanups

Fixes #16210
2024-08-30 18:26:59 +02:00
Cuteivist ee770257c5
chore: Disable clicking on Betatag (#16207) 2024-08-30 12:19:42 +02:00
Michał Cieślak c9b7d9eab6 Remove nim api for clipboard handling
Additionally there is hook on ClipboardUtils added
to detect if copied string is a wallet address and call addressWasShown.
Earlier that call was done internally on nim side.

Closes: #16196
2024-08-29 15:46:17 +02:00
Michał Cieślak 4ac9a9b305 copyImageToClipboardByUrl moved to ClipboardUtils 2024-08-29 15:46:17 +02:00
Michał Cieślak 9c3b8fc34b Use ClipboardUtils.text instead of backend-dependent getFromClipboard 2024-08-29 15:46:17 +02:00
Michał Cieślak a8940a71f5 Using ClipboardUtils.setText instead of nim's copyToClipboard 2024-08-29 15:46:17 +02:00
Michał Cieślak 7757f4e615 QClipboardProxy QML type renamed to ClipboardUtils
Additionally, copyTextToClipboard is renamed to setText, mimicking
QClipboard naming.
2024-08-29 15:46:17 +02:00
Michał Cieślak 781133238a ClipboardUtils: isValidImageUrl and isValidImageUrl excluded to UrlUtils 2024-08-29 15:46:17 +02:00
Michał Cieślak 9311ebe7fe QClipboardProxy renamed to ClipboardUtils 2024-08-29 15:46:17 +02:00
Dario Gabriel Lipicar 4257294c60 feat(wallet): upgrade paraswap api to v6.2
Closes #15755
2024-08-28 13:43:07 -03:00
Cuteivist 658fe2a5b4
fix(wallet): Update collectibles media management (#16080) 2024-08-28 15:58:33 +02:00
Sale Djenic 3cf6614082 chore: new router error `no positive balance` added 2024-08-28 11:26:23 +02:00
Anastasiya Semenkevich a7cb7376dd tests: use own profile link in messages so the information is not gone after 30 days 2024-08-27 14:50:29 +03:00
Seitseman 2275fe4f1f fix(Stored): Make stores typed
Adding types instead of var for stores used in qml components

Closes: #14801
2024-08-27 10:52:18 +02:00
Anastasiya Semenkevich ea31d1115f qml: change object name for account actions 2024-08-26 11:52:39 +02:00
Alex Jbanca 736075b817 fix(WalletConnect): Fixing sign for uniswap and paraswap
There are two fixes needed here.
1. Status-go fix for unknown primitive when signing the message
2. Fix for Paraswap pairing failure due to required namespaces mismatch

Needs: https://github.com/status-im/status-go/pull/5755
2024-08-26 11:41:27 +03:00
Andrey Bocharnikov d3131c2bb9 fix(community): Missing community owner token image
fixes #15855
2024-08-23 11:03:45 +07:00
Jonathan Rainville 30f1529471
fix(notifs): only fetch notification exemptions when going to the page (#16166)
Fixes #16165

All the logs about `settings_notificationsGetExPersonalMentions` are only to populate the model in the Notifications settings view, so it was pointless to load them on app start.
Now we lazy load them on loading that page.

An additional improvement that could be done later is to make it async and/or create a new API that gets all the DB info in one shot, because calling 4 APIs for each chat and community is a bit useless.
2024-08-22 14:48:04 -04:00
Sale Djenic 9aac6bbcdb fix: fixed issue with no fees when minting community token 2024-08-22 12:19:16 +02:00
Lukáš Tinkl e868f335aa feat(Settings/Privacy and security): add Privacy Policy popup
- mention the "Privacy Policy" document in the text explaining "Help us
improve Status", make a link to it and display it in a separate popup
- add a standalone header button to the settings page, doing the same
- extend storybook page with the "placement" param

Fixes #16157
2024-08-21 15:28:11 +02:00
Cuteivist 67cf522f0a
fix(wallet): Fill bridge tx type (#16162) 2024-08-21 14:49:12 +02:00
Sale Djenic f3a33f414d fix: can't add ens name as watched address
Fixes #13902
2024-08-21 12:08:26 +02:00
Lukáš Tinkl f59ce285a9 fix(StatusBaseButton): correct radius and icon size for `isRoundIcon` mode
- this fixes 2 small regressions, namely in how we calculate the
background corner radius and icon size when in the mode of `isRoundIcon`
- the "Saved addresses" button in wallet's left view is very special on
its own; overall we have only 2 instances of this "round" icon buttons
in the whole app

Fixes #16156
2024-08-20 22:08:19 +02:00
Lukáš Tinkl 8115a7d6da chore(Settings/About): update Privacy Policy document
- change the section names and titles accordingly too
- open embedded links with an external browser
2024-08-20 10:46:00 +02:00
Lukáš Tinkl f4040fb580 chore(links): do not open confirmation for "mailto:" links
- the domain for those is empty anyway
2024-08-20 10:46:00 +02:00
Cuteivist 224dd5e58d
fix(wallet): Filter collectibles filter options (#16125) 2024-08-20 06:02:14 +02:00
Lukáš Tinkl e3dae7e1db feat(StatusButton) Add support to show text when button is loading
- add a secondary "loading" state (`loadingWithText`), that is show the
loading indicator next to the text
- simplify the StatusBaseButton layout (esp. handling the overall
opacity/visibility)
- add a QML test suite; the code was becoming too complex and adding a
simple boolean prop was getting "dangerous"
- port the SwapModal to use the new `loadingWithText` property

Fixes #15313
2024-08-19 22:36:50 +02:00
Jonathan Rainville 42a9530452
feat(metrics): add onboarding screen metrics and section navigation (#16112) (#16145)
* feat(metrics): add onboarding screen metrics and section navigation

Fixes #16100

Adds metrics for navigating to the different screens of the onboarding and when navigating to a new section while logged in; only when enabled of course.

I refactored the code a little to make it simpler. I moved the check to see if the metrics collection is enabled in the async task itself, so we don't have to check it each time we add a new metric

* fix metric sent from module

* review comments

* add flowtype
2024-08-19 12:52:17 -04:00
Lukáš Tinkl 7c10b16b67 chore(AmountToSend): AmountToSendNew is dead, long live AmountToSend 2024-08-17 09:39:42 +02:00
Lukáš Tinkl 114abc7015 chore(swap): port SwapInputPanel to AmountToSendNew
- adjust the API calls
- fixup the tests
2024-08-17 09:39:42 +02:00
Lukáš Tinkl aae265123b feat(GenericValidator): expose locale name
- make it possible to configure the locale of the validator
- use the correct default decimal point in AmountValidator
- update/add the relevant tests for AmountToSendNew
2024-08-17 09:39:42 +02:00
Lukáš Tinkl 7ddbcf926b chore(AmountToSendNew): expose some more properties
- like cursorVisible or fiatInputInteractive
- add support for "loading" overlays
2024-08-17 09:39:42 +02:00
Khushboo Mehta b20cb42def \fix(@desktop/wallet): Fix register ENS flow which is currently broken 2024-08-16 09:04:54 +02:00
Igor Sirotin e279e639a4
chore: new parameters for local pairing (#15943)
* wip

* chore: cleanup variables

* chore: cleanup

* fix: remove defaultWalletEmoji

* chore: update status-go

* chore: update status-go
2024-08-15 18:36:32 +01:00
Lukáš Tinkl 1a1d575db0 chore: update Terms of Use document
- update to the latest version, as of 2024-08-14
2024-08-15 14:53:17 +02:00
Alex Jbanca de916507e9 fix(WalletConnect): Reject session request when the authentication fails
TODO: Analyse recovery options
2024-08-13 23:23:23 +03:00
Alex Jbanca 4d963031e9 fix(WalletConnect): Store web cookies and cache to a dedicated folder for each account
WalletConnect cannot operate on shared cookies in between accounts. This commit will split the cookies and cache in different folders with the user public key as folder name.
2024-08-13 23:23:23 +03:00
Alex Jbanca f00d7f3ec4 fix(WalletConnect): Fixing crash on authentication screen when the app resumes from a few minutes of inactivity
The root cause in this case was the usage of js stored QObjects coming from the model.

(cherry picked from commit 24a386d078)
2024-08-13 11:35:04 +03:00
Alex Jbanca 8d78f0fab2 fix(WalletConnect): dApp connection state presented in the UI is out-of sync
1. The DAppsListProvider needs to receive all the user accounts so that it can process all dapps the user is connected to (the dapps filtering based on selected account is an internal impl. detail)
2. Call `revokeSession` on disconnect only if the dapp cannot be found in the WC active sessions. There is some overlapping between Browser connector and Wallet connect because both operate on the same data stored in the DB. If Browser connector controller removes WC data, the WC disconnect flows cannot be successfully completed.
3. Reuse the same notification flow for Browser connector as it's used for WC
4. Fix dapp filtering when processing the dapps that will be displayed in the UI.

(cherry picked from commit 21227893c2)
2024-08-13 11:35:04 +03:00
Lukáš Tinkl 3c18ac0f7a feat(AboutViewPage): display the runtime Qt version in Settings/About
- it's easier to make sure and detect what users are using, esp. when
they report bugs
- with a clickable link to the release notes
2024-08-12 23:52:51 +02:00
Lukáš Tinkl a7e74f3e00 chore(Global): Remove FeatureFlags access via Global singleton
- rationale: do not save global state in a singleton, gather and
propagate the values via FeatureFlagsStore

Fixes #14697
2024-08-12 20:00:31 +02:00
Sale Djenic 20f30a52fd fix: keycard signing integration into wallet connect flows
Fixes: #15957
2024-08-12 19:52:04 +02:00
Khushboo Mehta 03e75e9532 fix(@desktop/wallet): Creating the UI flow needed to select params for making a purchase via Mercuryo 2024-08-12 11:25:00 -03:00
Sale Djenic b8ffa65113 chore: display generic error returned from the router 2024-08-12 12:53:58 +02:00
Lukáš Tinkl 790d34d875 fix(chat): Button to go to the latest message is barely visible on dark theme
- unify bg color, use white as fg color, add drop shadow according to
Figma
- fixup the hover color intensity

Fixes #13771
2024-08-12 09:46:30 +02:00
Lukáš Tinkl 7f4ca098de fix(SendModal): hide the Custom network mode in `production`
- manage the lifetime of the Custom tab button dynamically; setting the
tab button to `visible: false` doesn't unfortunately remove it from the
tab bar

Fixes #16052
2024-08-12 09:46:21 +02:00
Lukáš Tinkl 1df3503dfb chore(StatusSwitchTab*): simplify and make the beta tag highlighted
- make the StatusBetaTag highlighted when used inside an active/checked
StatusSwitchTabButton
- simplify the components, get rid of MouseArea just for the sake of
setting the cursorShape
2024-08-12 09:46:21 +02:00
Lukáš Tinkl c50c970e42 chore(StatusBetaTag): make fg color configurable 2024-08-12 09:46:21 +02:00
Michał 9acf723ddc chore: Architecture guide added and PR template updated
Closes: #15539
2024-08-09 22:29:44 +02:00
Cuteivist 86e054a328
fix(wallet): Don't reset wallet view after filter change (#15997) 2024-08-09 15:04:15 +02:00
Valentina Novgorodtceva b4ef71142e test: share wallet address test and default account values in send/receive/bridge 2024-08-09 11:14:54 +03:00
Jonathan Rainville 0470723a5d
feat(@desktop/metrics): send basic metrics (#15803) (#16040)
Issue #15737

Co-authored-by: Michał Iskierko <61889657+endulab@users.noreply.github.com>
2024-08-08 16:53:49 -04:00
Khushboo Mehta ada348486e feat(@desktop/wallet): Swap:: Added text that links to Paraswaps terms and conditions page 2024-08-08 18:34:43 +02:00
Lukáš Tinkl 7025938398 fix(MessageView): Clipboard after editing a message
- update the `unparsedText` after having edited the message; it is used
for copying the msg text to clipboard
- some cleanups

Fixes #15129
2024-08-08 17:59:28 +02:00
Michał Cieślak a0a688c3e4 Wallet: swap/bridge buttons visibility adjusted
Closes: #15952
Closes: #15931
2024-08-08 17:29:29 +02:00
Michał Cieślak 8f21c71f69 fix(CollectiblesView): Workaround for crash when hiding collectibles
In some rare cases hiding collectibles was causing segfault, related to
checking if all timestamps are available. Combination of 2 SFPMs with
the same source and Aggregator working on those models. Additionally
filters/sorters were depending on the Aggregator value. The minimal
crashing sample has been isolated to be investigated in a separate
ticket. In this commit aggregator's value is applied in a deferred way
via Qt.callLater, fixing the issue.

Closes: #15775
2024-08-08 17:20:28 +02:00
Michał Cieślak 021756fcd6 fix(ManageTokensController): Emit revision change after loading settings 2024-08-08 17:20:28 +02:00
Michał Cieślak bb05c068fa fix(Wallet/SendModal): Using community assets in SendModal unblocked
Closes: #15766
2024-08-08 15:40:18 +02:00
Anthony Laibe b4e08493ee fix(@wallet): enable eth bridging
fixes #16018
2024-08-08 10:56:47 +02:00
Sale Djenic 2d0c62ba9d feat: limits applied when running keycard flows that add new key pairs/accounts 2024-08-08 10:28:30 +02:00
Sale Djenic 77ca8761a6 feat: some limits for wallet section
Added limitations:
- allowed adding of max 20 accounts
- allowed adding of max 3 watch only accounts
- allowed adding of max 5 key pairs (including the profile key pair)
- allowed adding of max 20 saved addresses per mode

Closes #15934
2024-08-08 10:28:30 +02:00
Alex Jbanca effd676a16 fix(WalletConnect): Fixing fees parsing when provided by the dApp
(cherry picked from commit f73356e2e8)
2024-08-08 10:52:37 +03:00
Lukáš Tinkl 96824dbb91 feat(Wallet): Display the "Buy" button everywhere
- display the "Buy" button in every context in the wallet footer except
when viewing a collectible's details

Fixes #15813
2024-08-08 09:30:49 +02:00
Alex Jbanca 833848188c fix(WalletConnect): Fixing disconnect notifications
The disconnect notifications were operating on `WalletConnectService.currentSessionProposal`. This object stores the current session object on connect, but it's not necessarily the same session the user wants to disconnect.
To fix this I'm getting the active sessions from status-go when the disconnect request is received (from Status or dapp). If the topic matches to any connection topic owned by the users accounts we'll show a notification.

(cherry picked from commit fea4e8ed76)
2024-08-08 09:47:20 +03:00
Dario Gabriel Lipicar c0e5111fe5 feat(@desktop/wallet): handle Paraswap price impact error
Fixes #15542
2024-08-07 23:14:22 -03:00
Alex Jbanca 6a7b0c0289 fix: Remove possibility to add watch accounts on release
(cherry picked from commit 566a954935)
2024-08-07 19:17:16 +03:00
Lukáš Tinkl ed650d32dd chore: Remove the Browser from the app completely for now
- completely removes the `ui/app/AppLayouts/Browser` QML app section
- removes the `app_service/service/bookmarks`,
`app/modules/main/browser_section` and
`src/app_service/service/dapp_permissions` NIM modules
- remove the Browser settings page and associated popups/components
- HTML links now always open in an external browser
- adjust the section indexes in `Constants`
- fixup the e2e tests

Fixes #14614
2024-08-07 16:45:31 +02:00
Godfrain Jacques bef66612c5
feature(connector)_: Add model join to handle connected dApps (#15954)
* feature(connector)_: Add model join to handle connected dApps

* Fix review comments

* chore: bump status-go
2024-08-06 13:20:08 -07:00
Roman Chornii 4ba3cea925
fix(dApps): improved logic for the connected dApps list to always display as many dApps as possible. (#15837) (#15992)
Fixes: #15595.
2024-08-06 09:55:00 -04:00
Roman Chornii 6aa6746de2
fix(dApps): Improved handling of connected dApps. (#15985)
1. Hiding DApps button on not supported wallet account selection
2. Filtering DApps in connected dApps list based on account selection

closes: #15589
closes: #15647
2024-08-05 16:41:20 +03:00
Lukáš Tinkl 6159f53839 fix: Add additional information to the Beta tags
- display additional beta information as a tooltip
- don't overlap the Beta badge with the unread msg indicator
- some minor cleanups & fixes

Fixes #15795
Fixes #15929
2024-08-05 15:39:51 +02:00
Khushboo Mehta 27aaa97ebd fix(@desktop/wallet): fix for Swap Input parameters reset when balances are reloaded
fixes #15785
2024-08-05 14:39:27 +02:00
Lukáš Tinkl b67ea6643a fix(SendModal): Bridge modal Simple mode's scroll is very clunky
- remove the nested unneeded ScrollView
- cleanups and fixes in mocked models and stores to unbreak showing the
networks/routing in storybook

Fixes #15902
2024-08-02 18:24:29 +02:00
belalshehab b8bc0a9631 fix(wallet): Disable adding new watch-only accounts
closes: #15933
2024-08-02 12:00:41 +03:00
Lukáš Tinkl 40f7aff086 fix: inconsistent/incorrect decimal value formatting
- format Big decimal numbers correctly according to the current locale;
some precisions loss is tolerated here for the display purposes
- fixes wrong decimal separators in some places and aligns with the
standard in terms of number of decimals, as everywhere else in the app

Fixes #15612
Fixes #15790
2024-08-01 15:35:52 +02:00
Lukáš Tinkl 24dd67e6dd fix(Wallet): Hiding assets from wallet's main view doesn't work
- partially reuse the already available Global/Popups methods to hide
assets (which also emit proper notifications); those are needed as
anotehr shared modal from Popups uses it too (may come from outside of
Wallet)
- some warnings cleanup in the controller

Fixes #15777
2024-08-01 12:12:48 +02:00
Michał Cieślak baa1baa17f StatusQ/ConcatModel: flag added changing behavior on source model's reset
Closes: #15891
2024-08-01 10:52:22 +02:00
Sale Djenic 0c4b7e92a0 fix: tx fails if the bonder fee is higher than the amount being sent
Closes #15922
2024-07-31 16:59:33 +02:00
Cuteivist 74bc695f10
chore(wallet): Hide Swap if cannot send (#15918) 2024-07-31 16:02:03 +02:00
Jonathan Rainville 4159148ab7
fix(profile): fix canceling modifications in the profile (#15905) (#15906)
Fixes #15904
2024-07-31 10:00:56 -04:00
Khushboo Mehta 2447fa3554 fix(@desktop/wallet): Swap modal - Pay input amount - deleting 1 decimal deletes the entire number
fixes #15818
2024-07-31 15:20:37 +02:00
Stefan 98c18901e0 fix(dapps) Wallet Connect internet connection reestablishing issue
Add a new NetworkChecker QObject to StatusQ to be used in checking
internet connection status. This is used by the WebEngineLoader
to only allow loading of web pages when there is an active internet
to cover for a corner case on MacOS where the internet connection is
not reestablished if the WebEngineView was loaded without an active
internet connection.

Closes: #15598, #15806
2024-07-31 14:08:16 +02:00
Stefan 910af539d6 chore(dapps) remove unused Wallet Connect authentication from the SDK
Also add more debug logs for unhandled events

Updates: #15598
2024-07-31 14:08:16 +02:00
Stefan 992944870b chore(dapps) update Wallet Connect SDK to latest version 1.13.0
Upgrade from `1.11.2` to `1.13.0`

Updates: #15598
2024-07-31 14:08:16 +02:00
Stefan da622348f6 chore(dapps) remove the POC wallet connect
Updates: #15598
2024-07-31 14:08:16 +02:00
Cuteivist 20620e04cf
fix(wallet): Repeat transaction updates (#15571) 2024-07-31 13:58:05 +02:00
belalshehab 5d4afba07f fix(wallet)_: Filter non-bridgeable assets in Bridge Modal
- Implemented a bridgeableGroupedAccountAssetsModel in WalletAssetsStore.qml to dynamically filter assets based on their bridgeability.

closes: #15697
2024-07-31 12:43:24 +03:00
Stefan 222b9c74f5 chore(dapps) disable eth_signTransaction for Wallet Connect
Closes: #15661
2024-07-31 09:22:31 +02:00
Cuteivist dd25572c28
fix(wallet): Constrain token name size to send modal width (#15859) 2024-07-31 06:53:43 +02:00
Lukáš Tinkl 4dbae17bb9 fix(ConnectDAppModal): don't overflow texts
- set the correct widths and elide mode
- fixup the visuals of the NetworkFilter combo box (to disable it w/o
making it look disabled)
- fix passing the connection status down to DAppCard
2024-07-31 00:10:10 +02:00
Jonathan Rainville 298a6c3477
chore(beta): add beta tag to pairing screens (#15873) (#15901)
Fixes #15871

Adds a beta tag to the pairing screens on onboarding and settings
2024-07-30 12:55:03 -04:00
Sale Djenic fdd743a817 feat: checksum validation added to adding watch only address
Fixes: #15779
2024-07-30 18:17:53 +02:00
Sale Djenic 822410f6b6 feat: checksum validation added to adding saved addresses
Fixes: #15772
2024-07-30 18:17:53 +02:00
belalshehab 955c8f6580 fix(wallet)_: Disable send button on router errors & visually indicate gas issues
* Disable the send button when the router returns errors.
 * Display a red arrow on networks lacking sufficient gas for the transaction.

Closes #15700 #15701
2024-07-30 18:32:58 +03:00
Valentina1133 44281aabd0
test: community ban member steps added (#15845) 2024-07-30 12:44:35 +07:00
richΛrd 1cb05d5814
chore: rename shards.test to status.prod (#15782) 2024-07-29 18:26:31 -04:00
Lukáš Tinkl fbb112f64b fix(DAppSignRequestModal): correctly compute text painted height
- fixes text overflowing the box height

Fixes #15650
2024-07-29 16:48:22 +02:00
Roman Chornii a310b8b803
fix(dApps): Improved logic for disconnecting of dApps in the app. (#15840)
Closes: #15814
2024-07-29 17:39:56 +03:00
Khushboo Mehta 354f2e4359 fix(@desktop/wallet): Swap "Approve" button becomes enabled before Approve Tx succeeds/fails
fixes #15784
2024-07-29 14:30:16 +02:00
Lukáš Tinkl 0e0b264f4d fix(ConnectDAppModal): add scrolling
- wrap the contents into a scroll view and don't hardcode the height

Fixes #15592
2024-07-29 13:04:09 +02:00
Sale Djenic 8424cb5b87 chore: send modal adjustments
Closes #15833
2024-07-29 10:54:53 +02:00
Sale Djenic 207902589d chore: build the error reporting mechanism
Closes #15396
2024-07-29 10:54:53 +02:00
Andrey Bocharnikov ac04e34c21 fix(wakunodes): temporarily hide "add waku nodes" in advanced settings
Fixes #14929

Correct fix should be done as part of https://github.com/status-im/status-go/issues/5597 after dependency tasks are done
2024-07-27 01:11:53 +07:00
belalshehab 1aa2221834 fix(wallet)_: Temporarily disable Max Amount button pending #15709
- This commit temporarily disables the MaxAmount button in the `SwapInputPanel` and `SendModal` components.
     - The MaxAmount button will be reintroduced with the correct behavior in issue #15709 for the 2.31 release.

closes: #15710
2024-07-25 17:53:40 +03:00
Sale Djenic db77654274 fix: buying stickers doesn't work and popup may be misleading for the user
Closes: #15764
2024-07-25 10:30:31 -04:00
Lukáš Tinkl 0c9d4133a8 fix(SwapModal): ErrorTag looks wrong
- wrap the ErrorTag in a Loader, and set the width from there
- added tests for the component width with/without the button

Fixes #15788
2024-07-25 15:11:29 +02:00
Roman Chornii 4bbdeba020
fix(dApps): Added default dApp icon according to the new spec. Extracting dApp name from its url, if no name is provided through walletconnect API. (#15754)
Closes #15593
2024-07-25 15:43:52 +03:00
Khushboo Mehta 7af8ede0e2 fix(@desktop/wallet): Enabled unit tests previously marked as flaky and skipped 2024-07-25 14:15:31 +02:00
Stefan 7d0e77d86f fix(dapps) emoji in wallet connect uri error
Closes: #15594
2024-07-25 12:55:29 +02:00
Stefan e574524b9c feat(dapps) don't allow user selection of networks while connecting
The requirements are that we allow all available networks
to Wallet Connect
Also temporarily disable the tests that validate selection working

Closes: #15638
2024-07-25 12:55:29 +02:00
Stefan f6ae5ceabe fix(dapps) Wallet Connect url validation
The static url validation state `Pairing.errors.ok` was directly
responsible for the validation action in UX. With current change
the validation is now based on the pairing response. When the
pairing response is received the UX is validated and after half second
UX is moved to the approval process (`ConnectedDAppModal`)

Closes: #15591
2024-07-25 12:55:29 +02:00
Stefan 597d4bac9f fix(dapps) unsupported protocol Wallet Connect corner case
We have no easy way to check the protocol and provide a customized
error message. Therefore we generalizes the error message to network
not supported.

Closes: #15649
2024-07-25 12:55:29 +02:00
Lukáš Tinkl 8e0aed35e8 fix(StatusStickerPackClickPopup): display correct detailed contents of a sticker pack
- just use the `model.stickers` to access the submodel, remove dead NIM
code
- make sure that the installed sticker packs are loaded, even before
first opening the Sticker popup
- StatusStickerMarket: fix the back button
- fix launching the Buy stickers modal (SendModal)

Fixes #15718
2024-07-25 11:31:46 +02:00
Cuteivist 408073c7d2
fix(wallet): Show amount for mint activity (#15611) 2024-07-24 21:19:51 +02:00
Cuteivist 2175311c86
chore: Use correct unique key for collectibles (#15736) 2024-07-24 21:18:33 +02:00
Godfrain Jacques c2a8817a80
fix missing required param to fix sign request popup display (#15760) 2024-07-24 08:45:09 -07:00
Lukáš Tinkl ee01c20b88 fix(SwapModal) disable exchange button when params empty
- when we arrive to a point when all input params are empty, disable the
middle Exchange button
- add QML test for the Exchange button enabled/disabled state

Fixes #15751
2024-07-24 15:05:05 +02:00
Michał Cieślak 16e55505c0 fix(Wallet/AssetsView): Properly filter by account/chain
Closes: #15683
2024-07-24 14:41:18 +02:00
Lukáš Tinkl 765b526493 fix(SwapModal): Buy button not resizing with text
- also limit the max width in order for the ErrorTag not to overflow the
modal width

Fixes #15687
2024-07-24 13:52:21 +02:00
Stefan 7fb241b964 fix(dapps): filter out dApps connected on other profiles
Add helper function to filter out dApps with sessions that don't
have any supported account in the available accounts list.
Use helper function to filter out dApps connected on other profiles
when listing dApps in the dApps list.
When disconnecting an app only disconnect sessions for the current
profile.

Closes: #14888, #15707
2024-07-24 13:24:05 +02:00
Stefan 35b7f0583d fix(dapps) don't show Wallet Connect state from other profiles
Ignore session requests events that include accounts in other profiles

Updates: #15707
2024-07-24 13:24:05 +02:00
Stefan dc43a40a76 fix(dapps) minor wallet connect fixes and improvements
Also

- don't report error in case of status-go returning nil instead
of an empty array.
- fix misleading alias to AmountsArithmetic
- minor improvements requested in previous discussions

Updates: #15707
2024-07-24 13:24:05 +02:00
Michał Cieślak 166a0376ff fix(SendModal): Allow to send 0
Closes: #15720
2024-07-24 01:21:20 +02:00
Roman Chornii 4b4377331f
fix(dApps): sign popup appears during splash screen (#15739) 2024-07-23 21:48:01 +03:00
Michał Cieślak 44d04bb514 StatusQ(ObjectProxyModel): const_cast removed from proxyObject method
Closes: #15744
2024-07-23 18:17:02 +02:00
Ivan Belyakov 20f6ed3374 fix(wallet): network name in transaction details header
Closes #15725
2024-07-23 15:18:04 +03:00
Cuteivist 047f558cd1
feature(wallet): Token preferences in assets model (#15706) 2024-07-23 14:00:49 +02:00
Michal Iskierko 52fe774975 feat(@desktop/metrics): Show metrics popup when starting application
Adding local setting: metrics_popup_seen
Small refactoring: showing popup from main.qml
Showing popup: 1. on welcome screen, 2. in Settings/Privacy page and 3. after login when the popup has not been shown yet

Issue #15628
2024-07-23 10:59:03 +02:00
Michal Iskierko a26657bbca feat(@desktop/metrics): Add metrics management page
Add new settings page for metrics management - Privacy and security
Add popup to enable/disable metrics on Onboarding and Privacy screens
Add MetricsStore in QML

Issue #15490
2024-07-23 10:59:03 +02:00
Sale Djenic 989e5a90e6 fix: recalculation is not happening when changing amounts in custom bridge flow
Fixes: #15699
2024-07-23 10:50:52 +02:00
Dario Gabriel Lipicar 9d441fcff9 feat(@desktop/wallet): add support for approve and swap activity entries
Fixes #14836
2024-07-22 21:12:38 -03:00
Stefan e57f7552d9 feat(dapps) make wallet connect request data human readable
Notify user if he doesn't hold enough funds to make the transaction
Also check fees funds including the amount to be sent

Closes: #15192
2024-07-23 00:24:22 +02:00
Khushboo Mehta c89203f371 feat(@desktop/wallet): Implementation of Notifications
fixes #14834
2024-07-22 17:42:33 -03:00
Khushboo Mehta b93edff484 fix(@desktop/wallet): Update the link to point to terms and condition of paraswap page. 2024-07-22 21:40:01 +02:00
Godfrain Jacques 347e0df8b0
feat(connector)_: add sign transaction flow (#15662)
fixes #15182

 - Implement the sign transaction popup for Accept or Rejecting
   transactions
2024-07-22 11:02:35 -07:00
Lukáš Tinkl 9c90f0eab5 fix(Sync): unbreak sync instructions page layout
Iterates: #14668
2024-07-22 19:33:56 +02:00
Stefan b02d0d4b1c fix(dapps) restore loading of Wallet Connect SDK
Reverts changes introduced by 6eeb91 the connector integration
that were loading the SDK asynchronously. Not sure why it isn't working
though.

Closes: #15694
2024-07-22 18:01:54 +02:00
Stefan 36e3a7cbb5 feat(dapps) check max fees against balance
Also differentiate between l1 and l2 fees and check them against the
specific chain balance

Also

- Included tests for the new functionality
- Fixed some inconsistencies in handling types

Updates: #15552
2024-07-22 16:20:07 +02:00
Jonathan Rainville 8db0ac94f0
fix(networks): enable network before mint or airdrop (#15601)
Fixes #15507

Makes sure to enable the network where the owner token was minted before minting or airdroping a token.
This makes sure that the account selector shows the right balance and there is no ETH error before doing the transation
2024-07-22 09:52:44 -04:00
Dario Gabriel Lipicar 83db905e28 feat(swap): added more explicit error messages
Closes #14956
2024-07-19 16:40:22 -03:00
Godfrain Jacques 6eeb917cd7
feat(connector)_: create connection between connector service and status-desktop (#15565)
fix #15179 that triggers connection request from client

 - Setup the initial architecture for connecting Status-go and UI
   screens
 - Implement the request Connection popup for Accept or Rejecting
   connection
2024-07-19 12:21:36 -07:00
Jonathan Rainville a357299928
chore(beta): hioe ENS community permission creation (#15664)
Fixes #15663
2024-07-19 14:45:40 -04:00
Alex Jbanca 32aff401d6 fix(SendModal): Various issues fixed
1. Bridge panel not showing
2. Max button value when showing the fiat balance
3. Wallet footer visibility when Swap feature is disabled
2024-07-19 19:53:31 +03:00
Alex Jbanca 417a74d4b1 fix(SendModal): Fixing "Repeat transaction" action in Activity view and Activity details view 2024-07-19 19:53:31 +03:00
Alex Jbanca 6e93935298 fix(Send): Fixing Send button text on wallet footer on owner collectibles details view
Fixing a bug where the community name is not shown in the `Send` button
Get the collectible community name from the community model for community tokens. Otherwise default to community id.

+ Fix WalletFooter layout when the buttons text exceeds the available width

to squash: Fixing send on owner token - name
2024-07-19 19:53:31 +03:00
Alex Jbanca b36e2759af fix(Send): Fine tune the Send action on collectibles
1. Show Send Button on wallet footer when all accounts is selected
2. Hide Send Button in collectibles context menu and collectibles details view when the collectible is not owned by the user
3. Disable the Send Button in collectibles context menu and collectibles details view when the collectible is soulbound

to squash: Fine tune send action on collectibles

to squash: Fine tune send on collectibles

to squash: Fine-tune collectibles
2024-07-19 19:53:31 +03:00
Alex Jbanca 7926d1f748 chore(SendModal): Use accountAddress to preselect the account instead of account model item
Updating the SendModal to receive an accountAddress to preselect the account instead of the account item model

to squash: Fix account selection. by address
2024-07-19 19:53:31 +03:00
Alex Jbanca 663fd91425 chore(AccountSelector): Default to the first item in the account selector when the pre-selected address is not found in the model
There are cases when the AccountSelector can receive invalid address in the input API. In this case we'll default to the first selected item
2024-07-19 19:53:31 +03:00
Alex Jbanca 1b67063eac fix(AssetsView): Align the selected chains data type in the assets view with the nim property
Nim chain selection is a colon separated string, but the assets adapter expects a chainId array for the selection
2024-07-19 19:07:51 +03:00
Alex Jbanca 5586d0f98a fix(Swap): Remove unnecessary default chain pre-selection 2024-07-19 19:07:51 +03:00
Alex Jbanca 9f40f0fada fix(Swap): Fixing the account balance in the swap modal
The root cause of this issue is the improper computation of the  `accountBalance`  expression role in the accounts model. Its value depends on another model (`filteredBalancesModel`) and by the time the expression role gets computed the proper `balance ` is not ready in the `filteredBalancesModel`.

This is a quick fix, but maybe the real fix should be restructuring the adapter and the model dependencies. I'd look out for any `ModelUtils` usage and replace it with a declarative approach if possible.
2024-07-19 19:07:51 +03:00
Alex Jbanca 73bcacbfc0 chore(ModelEntry): Emit itemChanged event when the ModelEntry points to another model item
+ emit row changed after data is avaialble

to squash - modelEntry
2024-07-19 19:07:51 +03:00
Roman Chornii 357ba99495
fix(SeedPhrasePopup): fixed popup size when there is 1 item in the list. (#15639)
Fixes: #15478
2024-07-19 18:41:57 +03:00
Roman Chornii ecec94b1ff
fix: Removed duplicated text in Token Popup by reusing existing supportedTokenSources mapping (#15587)
fixes #14366
2024-07-19 18:41:40 +03:00
Khushboo Mehta 4b30b12fee fix(@desktop/wallet): fix for SwapSignModal has wrong value
fixes #15605
2024-07-19 17:35:42 +02:00
Khushboo Mehta fd3b76115f fix(@desktop/wallet): SwapModal: Fix for can approve Swap with no amount entered
fixes #15553
2024-07-19 17:35:42 +02:00
Michał Cieślak 1e88756c13 SendModal: new AmountToSend initial integration
- new AmountToSend used in SendModal
- MaxSendButton simplified

Closes: #15207
2024-07-19 17:27:08 +02:00
Michał Cieślak 613fa4d19f feat(SendModal): New AmountToSend component
In comparison to the previous version it provides simpler API
and better validation based on AmountValidator.

Old version will be removed after full integration of the new version.
2024-07-19 17:27:08 +02:00
Michał Cieślak 84be1d9da7 feat(StatusQ): AmountsArithmetic - utility method added for creating num from exponent 2024-07-19 17:27:08 +02:00
Michał Cieślak b9790c9797 feat(StatusQ): AmountValidator for handling user-provided fp numbers 2024-07-19 17:27:08 +02:00
Lungu Cristian 05287c873a
fix(walletconnect)_: tx fees not sent (#15678) 2024-07-19 16:33:22 +03:00
Ivan Belyakov 2f9bf48856 fix(wallet): fix balance chart to display chart for tokens
Replace missing methods calls of chart after it was replaced with a different
component.
Update chart on networks change.
Fix data for all chains requested - both test and real networks.
Fix some unrelated qml errors
2024-07-19 12:34:06 +02:00
Stefan 248ba1c1c8 feat(dapps): Add support for max fees in WalletConnect requests
Compute max fees for transaction related requests and display the
results to user.

Also:

- Add helper to convert from hex (backend) to decimal (frontend) values.
- Add helper to convert from float gwei to hex wei
- Update tests to accommodate for the new dependencies.

Sourcing of account balances is not included therefore the transaction is
allowed to go through even if the account balance is insufficient. An error
will be generated by the backend in this case.

Updates: #15192
2024-07-19 10:02:50 +02:00
Valentina1133 e1611cbc83
chore: keycard tests fixed, improved and other tests fixed accordingly (#15656) 2024-07-19 13:43:44 +07:00
Jonathan Rainville 2501e04ccb
Add Beta tag to the features that are not yet fully ready (#15617)
Fixes #15614

* feat(StatusQ): add StatusExperimentalTag component and page
* chore(beta): add beta tag to ENS
* chore(beta): add beta tag to Activity tab
* chore(beta): add beta tag to wallet settings
* chore(beta): add beta tag to Notification Center
2024-07-18 16:10:24 -04:00
Stefan 4341cfb4d2 feat(dapps) reject request on closing of modal
Closes: #15585
2024-07-18 17:15:24 +02:00
Valentina1133 2b415bdc53
test: block and unblock user test added (#15577) 2024-07-18 17:57:24 +07:00
Igor Sirotin e580953b81
fix: removed duplicated wallet conect icon (#15625)
* fix: removed duplicated wallet conect icon

* fix: qrc path
2024-07-18 09:02:07 +01:00
Cuteivist 55b2224593
fix(wallet): Validate decimals for crypto when sending (#15523) 2024-07-17 18:48:16 +02:00
Khushboo Mehta ec86a30d6e fix(@desktop/wallet): Fix for Swap - Pay and Receive assets get unselected, Pay amount resets to 0
fixes #15525
2024-07-17 17:25:57 +02:00
Khushboo Mehta 1d7ab859be fix(!desktop/wallet): Swap Modal doesn't have cursor visible when launched
fixes #15417
2024-07-17 17:25:57 +02:00
Noelia 34730eb9ff fix(Wallet/BridgeModal): Some small UI fixes to be more accurate to the new design and better UX
- Network item hover color, selected item border and background changed to have a better UX and being more accurate to the new design.
- Disabled option of unchecking networks. At least, always one should be selected.
2024-07-17 16:54:25 +02:00
Noelia 480a3ed182 fix(Wallet/BridgeModal): Incorrect preselected recipient value and network model for bridge
- Fixed incorrect preselected recipient object for bridge modal.
- Fixed network model assignment for bridge.

Fixes #15629
2024-07-17 16:54:25 +02:00
Valentina Novgorodtceva b0f373f1dc chore: removed duplicated method, updated test according to changes 2024-07-17 12:32:16 +03:00
Michał Cieślak 44808424a4 StatusQ: QValidator fully exposed to QML
Closes: #15581
2024-07-17 01:32:04 +02:00
Michal Iskierko ecaa9b39c0 feat(@desktop/metrics): Initialize centralized metrics
Issue #15446
2024-07-16 14:58:13 +02:00
Jonathan Rainville 54924420e6
fix(import): fix import community popup (#15568)
Fixes #15526

Fixes the import popup showing the wrong state. That was because a param was removed from the function, but not from the call to that function, so `true` was passed in `invitationPending` when it shouldn't have.

I also added a call to `spectateCommunity` before the community intro popup so that the community spectated beforee sending the request
2024-07-15 13:27:28 -04:00
Cuteivist 00fd183a33
chore: Revert binding workaround (#15572) 2024-07-15 11:44:26 +02:00
Roman Chornii c4d930ef88
fix(dapps) fail to process a transaction if missing usual fields (#15481)
Updates: #15189

Co-authored-by: Stefan <stefand@status.im>
2024-07-15 12:23:35 +03:00
Khushboo Mehta 6ae7e5fea2 fix(@desktop/wallet): Swap:: calculate propsal even if amount entered is more than balance
fixes #15509
2024-07-12 19:02:03 -03:00
Jonathan Rainville 4a097cfef7
fix(airdrop): sending an airdrop using a secondary account (better UX) (#15448)
Fixes #15382
So there is no easy way from the models and data we currently have in the client to know which account minted the owner token. So the easiest way to help the user is just to catch the error and show a better message.
2024-07-12 13:28:25 -04:00
belalshehab 20f1bfa0ea fix(wallet)_: filter out non-transferable collectibles in send modal
Description:
Enhanced the SendModal.qml to filter out non-transferable (soulbound) collectibles from the send model. This ensures that only transferable collectibles are displayed when sending.

Changes:

Updated SendModal.qml to include a SortFilterProxyModel with a ValueFilter.
The ValueFilter targets the soulbound role and filters out collectibles with soulbound set to false.
Issue:

Closes #14578
2024-07-12 19:40:48 +03:00
Lukáš Tinkl 38d155f590 feat(SwapModal): Integrate Sign and Approve modals
- remove old popup and related components/adaptors
- simplify the API of the Sign/Approve modals to take pre-formatted
amounts as strings
- correct login/auth icon
- SB: make it possible to open the new secondary modals
- SB: fix the `fetchSuggestedRoutes` response handling, pass around the
`uuid` and inject it to the mocked suggested routes
- adjust SB pages and tests

Fixes #15443
2024-07-12 16:04:21 +02:00
Roman Chornii 52b1cc3824
fix(statusProfileNavBarTabButton): Fixed backgound color and ring for… (#15534)
* fix(statusProfileNavBarTabButton): Fixed backgound color and ring for StatusNavBarTabButton that's displayed at left bottom of the main window.
Fixed signal typo in CommunityTokensStore.
Closes #15479.

* fix(CommunityTokenStore): fixed signal handler name on qml side.
2024-07-12 16:57:04 +03:00
Jonathan Rainville 8216ea37f7
feat(icon): show a red dot when we have unread notifications and windows icon with white border (#15496)
* feat(icon): show a red dot when we have unread notifications
* feat(windows-icon): update windows icon to have a white border

Fixes #14788
Fixes #14855

Adds a red dot on the tray icon if there is an unread message in an unmuted channel or in the activity center
2024-07-12 09:41:27 -04:00
Stefan fae3d14d50 feat(dapps): fetch max fees per gas from blockchain if not provided
Updates: #15192
2024-07-12 15:39:41 +02:00
Stefan 4deea3461f feat(dapps): show estimated time for dApps requests
Implemented using the fees from the transaction data sent
by the dApp.

Also fixed the nim status go wrapper to send proper formatted
string as expected on the other side.

Updates: #15192
2024-07-12 15:39:41 +02:00
Michał Cieślak be1c6ba2ad chore(StatusQ): Backpressure files deduplicated, imports adjusted
Closes: #15558
2024-07-12 14:00:15 +02:00
Anthony Laibe b2592d5d01 fix(@wallet): disable state for refresh
in case not interactive, we should not change the color on hover
2024-07-12 14:35:48 +03:00
Michał Cieślak ed8c727673 chore(SendModal): Qualified import for StatusQ Utils 2024-07-12 11:10:37 +02:00
Michał Cieślak 3503a60f07 chore(SendModal): SendModalAssetsAdaptor removed because it's replaced by TokenSelectorViewAdaptor 2024-07-12 11:10:37 +02:00
Michał Cieślak 4bf2f4df7a Wallet(SendModal): Old HodlingSelector and TokensListView removed 2024-07-12 11:10:37 +02:00
Michał Cieślak f6320f69cb Wallet(SendModal): New tokens selector intially integrated
Closes: #15512
2024-07-12 11:10:37 +02:00
Ivan Belyakov baa65de1ae chore(test): use STATUS_RUNTIME_USE_MOCKED_KEYCARD env var for
displaying mocked keycard controller window
2024-07-12 10:27:50 +02:00
Alex Jbanca ca8a0028a8
feat(WalletConnect): Implement sign request modal (#15520)
* feat(WalletConnect): Implement sign request modal

1. Implementing sign request modal based on SignTransactionModalBase
2. Adding storybook page
3. Integrate it in the app
4. Removing DAppRequestModal
5. Update RoundImageWithBadge to preserve aspect ratio between badge and main image

* fix(WalletConnect): Remove unneeded properties from WalletConnectService API

Removing `selectedAccountAddress` and `loginType`. These properties are now passed through DAppsWorkflow API

* fix(WalletConnect): Removing unnecessary changes
2024-07-12 00:00:15 +03:00
richΛrd 2a41622298
chore: rename shards.staging to status.staging (#15510) 2024-07-11 16:09:20 -04:00
Ivan Belyakov 1e146b76e7 fix(wallet): profile network RPC URL editing form closed on "Save and Restart
later".

Fix "Restore defaults" to have confirmation dialog too and not close the
network editing form as well.
2024-07-11 18:33:13 +02:00
Khushboo Mehta 7caba84833 fix(@desktop/wallet): Fixing issue in deleting characters from Input area
fixes #15418
2024-07-11 17:41:04 +02:00
Khushboo Mehta 758bba1ac0 feat(@desktop/wallet): Show total fees instead of approval fees if approve is needed on the swapmodal
fixes #15505
2024-07-11 17:40:49 +02:00
Jonathan Rainville ad612a794c
fix(sharedAddress): hide non fully imported accounts from shared address (#15480)
* fix(sharedAddress): hide non fully imported accounts from shared address

Fixes #15471

We only filtered out watch only accounts, but we also need to make sure it was a fully imported account, ie an account that is usable, hence why using `canSend`. It is the same property they use in the SendTransaction modal
2024-07-11 10:47:51 -04:00
Valentina Novgorodtceva 01b4d1305d test: verifications for share profile popup added 2024-07-11 16:56:27 +03:00
Michal Iskierko ab3fefa838 fix(@desktop/chat): fix edited keyword for bridged messages
Issue #15291
2024-07-11 15:09:32 +02:00
Noelia c8744cf3bf tests(qmlTests/RecipientSelectorPanel): Basic suite for `RecipientSelectorPanel`
Just some basic test cases. It needs a second step to add more interesting coverage.
2024-07-11 14:05:55 +02:00
Noelia bc74724672 refactor(Wallet/SendModal): Created `WalletAccountsAdaptor` to be used in `SendModal`
- Created data transformation file called `WalletAccountsAdaptor` for `SendModal`. Now it contains the owned wallet accounts model data transformations.
- Added common formatting method for short chain ids to some utils and partially removed backend dependency.
2024-07-11 14:05:55 +02:00
Noelia 18e230bf91 refactor(Wallet/SendModal): Selected Recipients component review, backend dependencies cleanup
- Component name changed to be more precise with what it represents.
- Removed `RootStore` dependency from `Helpers.qml`.
- Removed unnecessary method `lookupAddressObject` from `RootStore`.
- Updated `SendModal` property bindings related to recipient.
- Some activity controller interaction details moved to transactions store instead of being directly in `SendModal`.
- Type enum living in `RecipientSelectorPanel` is moved to `Helpers`. Since it doesn't depends on the specific component and it's used in other global places.

Part of #15208
2024-07-11 14:05:55 +02:00
Valentina1133 4dc170688e
test: hidden community channel test added (#15485) 2024-07-11 17:51:56 +07:00
Cuteivist b4059b1f7d
chore: Refresh pre selected account property (#15503) 2024-07-10 11:03:32 +02:00
Cuteivist bc736257d1
fix(wallet): Show route amounts in network cards (#15441) 2024-07-10 11:02:35 +02:00
Cuteivist 64f3ec67dd
fix(wallet): Reset value when chain is disabled in custom mode (#15452) 2024-07-10 11:02:24 +02:00
Lukáš Tinkl 8504fb55a1 chore[UI - Wallet Stability] Rename SendModalFooter to TransactionModalFooter
... and remove particular code for send modal

- derive the footer from the standard `StatusDialogFooter` to reduce
code duplication (drop shadow, divider, margins, etc)
- rename the default button text
- expose the icon name and make it used the correct login/auth type icon
- some minor fixes and cleanups

Fixes #15212
2024-07-10 10:29:05 +02:00
Stefan 136194c112 feat(dapp) handle pairing errors or timeout if no response
Found out while testing that in some corner cases there will be no
response of error in case of pairing. This is handled now by showing
a generic error message. The implementation is using a timer to handle
this case.
Extend the logic to report errors in the pairing process.

Closes #14676
2024-07-09 19:21:09 +02:00
Stefan 1e256c8bf1 feat(dapps) fail on Wallet Connect unsupported networks
Also extend the generic error handling of approval errors

Updates: #14676
2024-07-09 19:21:09 +02:00
Stefan 15b2c084d2 feat(dapps) check Wallet Connect pair uri for already used and expired
Refactor and bring all the error check back to services
Automate pairing procedure and move to the connect dialog
if uri was validated

Updates: #14676
2024-07-09 16:11:23 +02:00
Khushboo Mehta 2df35ff0c9 feat(@desktop/wallet): Implements auto refresh
fixes #14952
2024-07-09 15:48:09 +02:00
Stefan 3049c6016b feat(dapps) extend and improve sign
Extend support for legacy `eth_sign` and `eth_signTypedData`
methods.
Keep the `eth_sign` using the legacy method for compatibility

Use the newly added status-go apis for a safer implementation
of signing typed data by providing chain validation.

Closes: #15361
2024-07-09 15:01:27 +02:00
Michał Cieślak 4a6257282e feat(Wallet): New tokens selector and related adaptor
Closes: #15121
2024-07-09 13:13:52 +02:00
Michał Cieślak 670aa4627e StatusQ: Workaround for QTBUG-86428
Registration of QAbstractItemModel* allows to nest submodels, e.g:

SortFitlerProxyModel {
    sourceModel: LeftJoinModel { ... }
}

Earlier, it would cause error:
> Cannot assign to property of unknown type "QAbstractItemModel*"
2024-07-09 13:13:52 +02:00
Lukáš Tinkl 84ac6e5902 chore(InformationTag): fix asset color
- it wasn't suitable for dark mode
2024-07-09 12:06:49 +02:00
Lukáš Tinkl 5665602451 feat:[UI - Swap] Create swap approve dialog
- create a new UI component
- add it to StoryBook
- add QML tests
- integration will be done as part of
https://github.com/status-im/status-desktop/issues/15443

Fixes #15442
2024-07-09 12:06:49 +02:00
Khushboo Mehta 429a2af66e feat(@desktop/wallet): Display for L1 fees on a transaction as per design
fixes #14208
2024-07-09 12:04:25 +02:00
Khushboo Mehta 1ebdbde5c3 feat(@desktop/wallet): Implements Network selection behaviour
fixes #15274
2024-07-09 11:27:55 +02:00
Lukáš Tinkl d3b2f23fe0 fix(TabAddressSelectorView): fix propagating roles from one model to another
- namely fixes the wallet account color and keycard decoration
- adjust mock model to contain the needed role (for keycard icon)
2024-07-08 21:16:53 +02:00
Lukáš Tinkl 48d8846e29 chore: factor out and create new `SendRecipientInput` component
- some minor visual fixes (padding & clear button color)
- make it always paste plain text, eventhough the base component has to
stay RichText
- use it in SendModal->RecipientView
- add a storybook page
- added QML tests

Fixes #15252
2024-07-08 21:16:53 +02:00
Lukáš Tinkl 9fcb54cb74 chore: unbreak showing SendModal assets in StoryBook
- unbreak passing the controller into the adaptor; can't be strongly
typed as that hides all the assets (always returns `false` from the
`visible` property)
- fix selecting account address (var account -> string accountAddress)
- fix the mocked account model to contain the needed `canSend` role, fix
the mocked check function
- fix showing community assets and balance threshold
2024-07-08 21:16:53 +02:00
Lukáš Tinkl 5d9c5d46fd feat(StringUtils): implement `plainText(htmlFragment)`
- converts an HTML fragment to plain text
- move the impl to C++ so that it can be used directly from QML too
2024-07-08 21:16:53 +02:00
Valentina Novgorodtceva e1bb235b4e chore: method to set waku mode added 2024-07-08 17:31:41 +03:00
Ivan Belyakov e45961232b fix(wallet): cross chain send transaction is detected now as send not
bridge
2024-07-08 15:18:57 +02:00
Igor Sirotin 8b80cfb9e3
feat: display message outgoing state (#15450)
* chore: storybook page

* feat: propagate outgoing status to StatusMessageHeader

* feat: improve message outgoing status UI

* fix: lock message `delivered` state
2024-07-08 13:26:04 +01:00
Alex Jbanca b3df5476c7 feat(dApps): Fine-tune dAppsListPopup
1. Updating alignments
2. Adding scrolling effects
3. Updating storybook page
2024-07-06 11:27:28 +03:00
Stefan 06184e4d95 fix(dapps) fail to process a transaction if missing usual fields
Updates: #15189
2024-07-05 17:48:30 +02:00
Stefan dbd96133a5 feat(dapps) update persistance from the SDK on sessions refresh
Updates: #15189
2024-07-05 17:48:30 +02:00
Stefan 94dc7b04a5 feat(dapp) disconnect wallet connect dapps
Closes: #15189
2024-07-05 17:48:30 +02:00
belalshehab 41ba77e525 fix(wallet)_: SendModel scrollbar overlaps with tokens
- Adjusted StatusListItem height to account for scrollbar visibility by adding 16 pixels to contentHeight when tags are visible.
- Set tagsScrollBarVisible to true in TokenListView to ensure the scrollbar is displayed as needed.

fixes: 13620
2024-07-05 12:14:52 +03:00
Michal Iskierko 1bc979290f feat(@desktop/permissions): use non community NFTs in permissions
Issue #15077
2024-07-05 10:27:17 +02:00
Michał Cieślak 62092e5083 feat(Chat/RootStore): collectibles model holding both community and wallet tokens 2024-07-05 10:27:17 +02:00
Alex Jbanca 2f050a025f feat(WalletConnect): Fine-tune connect dApp modal
Changes:
1. Align dialog with Figma design
2. Add new components for round image with badge and connection status tag
3. Add tests
4. Dapps service will now receive wallet `RootStore` as input and reuse existing models with account balance and other necessary info for account selection and chain selection
5. Minor updates in stores
6. Minor updates in WC toast messages to display app domain instead of app url
2024-07-05 01:03:23 +03:00
Patryk Osmaczko b08eb128ad feat(communities): inform about missing encryption key
closes: #15064
2024-07-04 19:36:30 +02:00
Jonathan Rainville e3979ed55e
fix(airdrop): fix lost info when closing password in airdrop flow (#15385)
Fixes #15383
2024-07-04 12:12:13 -04:00
Roman Chornii 85846c88e9
feat(dapps): Implemented Loading state while processing URL (#15346)
Closes #14675.
2024-07-04 16:33:05 +03:00
Roman Chornii 03f8f80c56
feat(dapps): Implemented hovering and proper image color for dapps item delegate. (#15408)
Enabled walletconnect qml tests.
Closes #14760
2024-07-04 16:32:04 +03:00
Lukáš Tinkl 7146d5af5b feat: [UI - Swap] Create swap sign dialog
- create a common base for "sign" transaction popups/modals:
`SignTransactionModalBase`
- add SwapSignModal, deriving from the above common modal base
- add it to StoryBook; integration TBD as part of a different followup
PR
- add QML tests

Fixes #14785
2024-07-04 11:12:14 +02:00
Lukáš Tinkl 57585652d0 fix(TokenSelector): Crash when try to search token in SwapModal
- fix crash deep in ListView section handling; turns out ListView
doesn't like `section.property` being empty

Fixes #15445
2024-07-04 11:04:39 +02:00
belalshehab 60e0e212b2 fix(wallet)_: disable Sort by Date option when timestamps are not ready
- Disable 'Sort by Date' when timestamps are incomplete.
- Default to 'Alphabetical' sort if date is unavailable.

fixes: #13630

Update status-go submodule to latest commit on develop
2024-07-04 03:10:43 +03:00
belalshehab 1834581821 feat(Wallet)_: Enhance ComboBox with 'isDisabled' property
Added an optional 'isDisabled' property to the ComboBox model to dynamically control the visibility and interaction of entries based on their state. This enhancement allows for entries to be disabled under certain conditions, improving the UI's adaptability and user interaction.

fixes: #13630
2024-07-04 03:10:43 +03:00
belalshehab 3452fbadc6 feat(wallet)_: add manual reload button to WalletHeader.qml
- Added a manual reload button to the WalletHeader to allow users to refresh wallet data on demand.
- Implemented a throttle timer to prevent excessive reloads.
- Show the last reload time.
- Updated UI elements to reflect the reloading state for user feedback.
- Connected the reload button to the backend to trigger the wallet reload functionality.

resolves: #13652
2024-07-04 00:19:42 +03:00
belalshehab d0f0537c56 feat(wallet)_: add loadingIndicatorSize and mirror properties to StatusButton
- Added `loadingIndicatorSize` property to `StatusBaseButton` to allow customization of loading indicator size.
- Introduced `mirror` property in `StatusIcon` to support icon mirroring.

resolves: #1365
2024-07-04 00:19:42 +03:00
Jonathan Rainville 459bbf7cc9
fix(edit): fix message contentType when editing (emoji or message) (#15364)
Fixes #15348
2024-07-03 14:08:42 -04:00
Jonathan Rainville 393ee8e284
fix(profile): fix missing ring in own profile (#15366)
Fixes #15314

The problem is that we used the `name` property to know if we have an ENS name, but we actually set it to whatever is available, so we need to validate that it's an ENS name
2024-07-03 14:06:03 -04:00
Khushboo Mehta 0e458842d2 feat(@desktop/wallet): Implementation of Sign Swap
fixes #14835
2024-07-03 14:41:57 +02:00
Cuteivist c934ba74ef
feat(wallet): Networks model improvements (#15305)
* refactor getters for chainIds and enabledChainIds
* simplify community chainIds getter
* simplify usage of network dto objects
* remove duplicated roles from send area
* rename network model in send module to network route model
2024-07-03 10:51:15 +02:00
Alex Jbanca 4bcda69d4a feat(WC-establish-connection): Fine-tune dApps button
1. Transform the dApps button into a combo box and add badge indicator + tooltip
2. Add storybook page
3. Adding tests
4. Minor fixes - dApps popup width, ModelUtils imports
2024-07-03 11:03:18 +03:00
Cuteivist c59ac4f3f0
feat(wallet): Wallet accounts model improvements (#15213) 2024-07-03 05:55:05 +02:00
Lukáš Tinkl 869abe8b59 fix(TokenSelector): fix sections and empty search result
- do not display sections with an active search
- display a "No assets found text" when the search yields no results
2024-07-02 21:25:15 +02:00
Lukáš Tinkl ca3d1ba067 fix(TokenSelector): fix margins and hardcode popup height
- also position the view at the beginning, not on the selected item on
startup

(based on feedback from design)
2024-07-02 21:25:15 +02:00
Lukáš Tinkl 464af7a04d fix(TokenSelector): Duplicate plain token entries
- filter out plain tokens from the adaptor's if already present in the
output model
- add a corresponding regression test

Fixes #15412
2024-07-02 21:25:15 +02:00
Lukáš Tinkl a18056c7d1 chore(TokenSelectorViewAdaptor): extract "favorites" section name 2024-07-02 21:25:15 +02:00
Cuteivist e199e7f9da
fix(wallet): Added adaptor to properly refresh send modal total balances (#15409) 2024-07-02 14:22:20 +02:00
Stefan 97413d99d1 feat(dapps) implement eth_sendTransaction support for wallet
Add `Fees` section to request modal

Closes: #15126
2024-07-02 09:24:09 +02:00