Commit Graph

584 Commits

Author SHA1 Message Date
Lukáš Tinkl 3671923f6a fix[CI] PagesValidator UI test doesn't catch missing `required` properties
- use the full `QQmlEngine` to test loading of the component

Fixes #13901
2024-03-11 12:44:16 +01:00
Stefan 9202cce3f5 feat(activity): add incremental updates to current activity filter
Switch the activity filter to use the new session-based API that
deliver incremental updates to the current filter.

Drop the old quick win listening for individual change events and
use the unified API instead.

The new transactions (on-top) trigger the old "new transactions" buttons
that trigger reset of the current filter and the top new transacitons
highlighted.

Highlight mixed changes (not new on top) as they come in

Highlight new changes on filter reset

Closes #12120
2024-03-11 11:39:59 +01:00
Anthony Laibe 115610fcf6 feat(@wallet): unknown token 2024-03-11 11:29:32 +01:00
Noelia a9b5d8fcf7 feat(ProfileShowcase): Add search input in all tabs
- Added searcher input in header.
- Added 2 filter proxies for hidden and inshowcase models depending on search text.
- Added filter expression per showcase tab (accounts, collectibles and communities).
- Added specific placeholder when search empty.
- Added specific logic when search active.
- Added search validation.

Closes #13508
2024-03-08 10:43:07 +01:00
Noelia b92974ffff feat(ProfileShowcase): Display counter in `In showcase` section header and elements limit
- Added counter in showcase header.
- Added placeholder when limit reached and section expanded.
- Added placeholder when limit reached and section collapsed.
- Added green animation when section collapsed and element added.
- Disabled showcase delegate context menu when limit reached.
- Dynamic tooltip offset center added.
- Added model changes tracker to track the in showcase count.

Closes #13507
2024-03-07 16:10:46 +01:00
Alexandra Betouni 13c2653e2f Added Chart Panel in story book 2024-03-07 11:49:24 +02:00
Alex Jbanca 4d6082e806 feat(ProfileShowcase): Updates based on comments 2024-03-06 14:49:54 +02:00
Alex Jbanca e304d9b76b feat(ProfileShowcase): Implement workaround for the inline components not working
This commit will fix the linux and windows builds by removing the usage of public inline components

TODO: revert this commit once all platforms are migrated to qt 5.15.8+
2024-03-06 14:49:54 +02:00
Alex Jbanca 4a4a5d5c4b feat(ProfileShowcase): Adding the MovableModel to the ProfileShowcaseModels to intercept the SFPM events
This is needed for the DND.
2024-03-06 14:49:54 +02:00
Alex Jbanca 07484cb15c feat(ProfileShowcase): Simplify ProfileShowcasePanel API and connect to the new models
1. Fix `EmptyShapeRectangleFooterListView` visibility and positioning after ListView items are animated out of view
2. Update `ShowcaseDelegate` to remove modelObject dependency. The UI properties needed will be received from parent
3. Update `ProfileShowcasePanel` to remove the previous logic involving rows move and visibility change. There is no need now for two specialised delegate components (one for in showcase and one for hidden). The delegate is still configured outside of this component because the model rolenames need to be mapped to the delegate properties. The common delegate logic is implemented in the `ProfileShowcasePanel` and only the model mapping is needed from parent component.
3. Update all `ProfileShowcase*Panel` to impement the new API
4. Remove all `*ShowcaseDelegate`. The delegate is simple enough to be configured at once in the Panel
2024-03-06 14:49:54 +02:00
Alex Jbanca 49aa747fdf feat(ChannelPermissions): Show confirmation dialog before closing the channel edit popup 2024-03-06 14:40:23 +02:00
Ivan Belyakov da226b75aa feat(wallet): resize saved address popup to remove network selection
when ENS name is resolved. Resolve ENS name before used in SendModal.
UI tweaks:
  - red stroke on address input in case of error
  - smaller tick for validation address input
  - added validation spinner to address input, removed from the button
  - handled tab key to move focus between inputs
2024-03-06 08:52:23 +01:00
Dario Gabriel Lipicar 96d9acf1f0 feat(@desktop/wallet): implement jump to activity details screen from collectible details activity tab
Fixes #13721
2024-03-05 07:41:20 -03:00
Lukáš Tinkl d12490ab18 feat(Profile flow): Respond to/review an incoming CR
- implement the new "Reviewing contact request" popup & flow
- adjust storybook

Fixes #13519
2024-03-04 10:56:10 +01:00
Lukáš Tinkl fda1d37c5b feat(Profile flow): ID verification flows (incoming/outgoing)
- Send/request ID verification
- Reply to incoming ID request
- Review ID verification reply
- adjust SB and add shortcuts to trigger the various states of the ID
verification flows

Fixes #13709
Fixes #13745
Fixes #13747
2024-03-04 09:56:30 +01:00
Ivan Belyakov 09c0f1b0c8 feat(wallet): ReceiveModal dialog UI tweaks
Closes #13386
2024-02-28 17:23:46 +01:00
Dario Gabriel Lipicar 10c44b8038 feat(@desktop/wallet): implement collectible details activity tab
Fixes #12311
2024-02-28 13:07:48 -03:00
Ivan Belyakov be218c22cd feat(wallet): Send modal community tokens always grouped and listview sections changed
Closes #13430
2024-02-26 17:21:52 +01:00
Lukáš Tinkl 4d3745d4b2 feat(Profile flow) Mark as ID verified / remove verification
- implement two new actions and popups to directly mark a contact as "ID
verified" and remove the verification thereof respectively
- do not hardcode the secondary button inside ProfileDialogView and make
it a Loader
- make the CommonContactDialog contents scrollable

Fixes #13711
2024-02-26 16:11:56 +01:00
Noelia 3386ce74e7 feat(ProfileShowcase): Created first info popup
- Created `ProfileShowcaseInfoPopup` component.
- Added storybook support for the new popup component.
- Added new popup into the application flow.
- New property stored in local account settings file.

Closes #13338
2024-02-26 10:08:52 +01:00
Khushboo Mehta 085bf762a5 feat(@desktop/wallet): Update token details view
closes #12373
2024-02-23 13:03:28 +01:00
Michał Cieślak 94f250d671 chore(ProfileShowcaseDirtyState): integration with Constants.ShowcaseVisibility enum 2024-02-21 09:42:05 +01:00
Michał Cieślak ac266bb997 feat(ProfileShowcase): Component managing all models required by Profile Showcase settings UI
Closes: #13435
Closes: #13490
Closes: #13494
2024-02-21 09:42:05 +01:00
Michał Cieślak 809af0ac90 feat(ProfileShowcase): Base components for managing dirty state 2024-02-21 09:42:05 +01:00
Michał Cieślak 2ffb0feedd feat(Storybook): Utility allowing quickly visualize any model.
It makes work with model in Storybook much faster bc eliminates work
related to creating delegates and also (when needed) handling dnd logic.

Closes: #13599
2024-02-21 09:42:05 +01:00
Michał Cieślak b949fb7b3b StatusQ(MovableModel): Methods naming refactor, Storybook pages updated/improved 2024-02-21 09:42:05 +01:00
Lukáš Tinkl e46f6c311c feat(Profile flow): Remove a contact
- implement the new remove contact confirmation popup

Fixes #13521
2024-02-20 20:11:56 +01:00
Lukáš Tinkl e773d8d358 feat[StatusButton] missing green/success state
- implemented the missing `StatusBaseButton.Type.Success` state and
colors for both `StatusButton` and `StatusFlatButton`
- use a `switch` instead of a waterfall of ternaries
- adjust storybook for the new case

Fixed #13622
2024-02-20 00:35:04 +01:00
Khushboo Mehta eaef030bc8 feat(@desktop/wallet): Send dialog: sizing and layout rules to limit dialog height jumping between states
fixes #13377
2024-02-19 17:23:20 +01:00
Cuteivist 7dedb223a2
feat(@desktop/activity): Handle token received notification (#13447) 2024-02-19 14:58:20 +01:00
Lukáš Tinkl 4a3eb4ce18 feat(Profile flow) Mark as untrusted
- add new popup for marking a person as untrusted
- optionally display checkboxes to remove ID verification or the contact
- emit toasts

Fixes #13520
2024-02-19 14:25:35 +01:00
Noelia 01095e0208 feat(ProfileShowcase): Add foldable sections in profile showcase tabs
- Modified `ProfileShowcasePanel` with 2 foldable sections.
-  Modified api of `ProfileShowcaseCommunitiesPanel` with the new base component.
- Modified api of `ProfileShowcaseAccountsPanel` with the new base component.
- Modified api of `ProfileShowcaseAssetsPanel`  and `ProfileShowcaseCollectiblesPanel` with the new base component.
- Added needed `storybook` support.

Closes of #13504
2024-02-19 11:13:23 +01:00
Lukáš Tinkl 2fa65968c0 fix(Profile flow): Send a contact request (CR)
- make `SendContactRequestModal.qml` use the common dialog, use the
contact details if we already have it
- make some minimal changes to the "Send ID verification" flow since it
shares the same dialog
- simplify the `CommonContactDialog.qml` footer/buttons handling
- adjust the menu item texts
- emit toasts when the action is performed
- display a tooltip over the compressed elided key

Fixes #13518
2024-02-16 16:47:45 +01:00
Lukáš Tinkl 275d4fb349 fix(Profile flow): Adding/changing/removing a nickname
- introduce a shared `CommonContactDialog.qml` component, to be used in
all profile/contact related flows
- make `NicknamePopup.qml` use the common dialog
- adjust the menu item text and add a new "Remove nickname" item
- remove unused `DisplayNamePopup.qml`
- emit toasts when the nickname changes

Fixes #13513
2024-02-16 10:52:58 +01:00
Dario Gabriel Lipicar 1860aa8240 fix(wallet): implement sort collectibles by date
Fixes #13550
2024-02-15 14:09:04 -03:00
Noelia 2259f92ed3 storybook(ActivityNotification): Community token received page
Added support to `ActivityNotificationCommunityTokenReceived` component.

Closes #13362
2024-02-14 15:10:20 +01:00
Alex Jbanca 8a69f3bc63
fix(SeedPhrase): Fixing seed phrase validation (#13496)
* fix(SeedPhrase): Fixing seed phrase validation

1. Validate each word after the editing is finished
2. Fixing the seed phrase suggestions where the suggestions box was hidden behind other ui elements
3. Propagate editingFinished signal in StatusBaseInput, StatusInput, StatusSeedPhraseInput
4. Fixing undefined `mnemonicIndex` errors

* fix: Refactoring of SeedPhraseInputView

Remove duplicated code and use EnterSeedPhrase component

+ Added storybook page

* fix(Onboarding): Fixing seed phrase validation on windows

The seed phrase validation fails on windows due to the dictionary line endings

* chore(squish): Update e2e tests to the new enter seed phrase panel construction

* fix: Load english dictionary from local file using StringUtils
2024-02-14 15:50:14 +02:00
Lukáš Tinkl 46e256673c feat(profile): Place user image/identicon onto the QR code
- fix the QR code to generate a URL with the link to the profile instead
of just the user key
- reuse the `UserImage` component and place it on top of the existing QR
code
- put a white rectangle behind the QR code image and white ring around
the user image

Fixes #13482
2024-02-14 13:37:06 +01:00
Noelia 1de573ada7 feat(ProfileShowcase): Collectibles panel navigation button
- Created new reusable component to navigate to accounts tab form collectibles / assets tab.
- Added needed support in `storybook` to cover the new use case.

Closes #13340
2024-02-14 10:28:56 +01:00
Lukáš Tinkl 0f1fc3b241 fix(profile/qr) add Copy/Download menu for QR code
add a regular image context menu with:
- "Copy image" -> copy the image to clipboard
- "Download image" -> downloads the image in the user specified folder

Fixes #13479
2024-02-13 15:04:27 +01:00
Noelia 463cce03ac feat(ShowcaseDelegate): Added community badge
- Added community badge in `ShowcaseDelegate`.
- Added `storybook` support.

Closes #13336
2024-02-12 14:45:14 +01:00
Noelia 9d4f1f6aa7 feat(ProfileShowcase): Assets panel navigation button
- Added new button to navigate to accounts tab form assets tab.
- Added needed support in storybook to cover the new use case.

Closes #13337
2024-02-12 14:44:47 +01:00
Khushboo Mehta 8c939ad3a3 fix(@desktop/wallet): Replace existing model used in Community / Permissions and do the needed cleanups
fixes #12513
2024-02-12 14:26:13 +01:00
Lukáš Tinkl 4b24497899 fix(profile): add online status badge to profile picture
- adds the green/gray dot (aka online indicator) to Profile dialog and
context menu (via ProfileHeader and UserImage components)
- add the respective combobox to storybook too

Fixes #13480
2024-02-12 12:36:20 +01:00
Michał Cieślak ee3e1febb6 fix(StatusModalFooter): Prevent footer's buttons overflow
Closes: #11449
2024-02-09 13:41:39 +01:00
Michał Cieślak 6aee04e33e fix(StatusDialogFooter): Prevent footer's buttons overflow 2024-02-09 13:41:39 +01:00
Alexandra Betouni 480985ca4e
[Settings]: Added change password view (#13284)
* [Settings]: Added change password view

Closes #10037

Adding configuration options to PasswordView

* feat(ChangePassword): Integrate ConfirmChangePasswordModal

1. Integrate with backend
2. Clean unused components

* feat: Add support to restart application

1. Adding restart app support in DOtherSide
2. Integrating nimqml
3. Expose in qml in Utils

* chore: Move changeDatabasePassword call to threadpool

* chore(squish): Fix failing tests due to settings index changes

---------

Co-authored-by: Alex Jbanca <alexjb@status.im>
2024-02-09 13:31:37 +02:00
Lukáš Tinkl 319b5dd23e feat(profile dialog): General UI updates
- create new `ShareProfileDialog` with QR code + links
- align the context menu items with latest Figma designs
- add `isBlocked` to contact icons
- adjust SB to show more options and showcase models

Fixes #13416
Fixes #13417
2024-02-09 11:41:55 +01:00
Dario Gabriel Lipicar 8b7efa3122 feat(wallet): simplify loading items mechanism for collectibles model
Fixes #11802
2024-02-08 11:08:21 -03:00
Alex Jbanca b891243ad8 chore(ChannelPermissions): Update storybook to support channel permissions in the create channel popup 2024-02-07 19:54:47 +02:00
Michał Cieślak bb391a68ba chore(StatusQ/MovableModel): storybook page showing sfpm/MovableModel and DnD working together 2024-02-07 10:33:45 +01:00
Lukáš Tinkl 9db48a986a fix(token mgmt): finish the controller refactoring
- reduce the duplication by moving the controllers (1 per type) to the
toplevel stores
- make sure the internal properties stay in sync between save/load now
that we have just 1 common controller
- fix navigating to the Hidden section from the toast
- finish impl of hiding the token from FirstTokenReceivedPopup
2024-02-02 23:48:10 +01:00
Noelia 3cbfe1cf54 feat(TokensManagement): Hide asset / collectible popup
Moved `ConfirmationDialog` popups related to hide individual assets or collectibles to `Popups`.

Part of #13293
2024-02-02 23:48:10 +01:00
Lukáš Tinkl 12bbaee43f fix: refactor the token mgmt controller and models placement
put the respective controller instances into WalletAssetsStore and
CollectiblesStore, so that they can be accessed from other places, like
the SendModal or some popups

Iterates #13293
2024-02-02 23:48:10 +01:00
Anthony Laibe 1634109971 feat(@wallet): token list global updated at
fixes #13269
2024-02-02 12:01:17 +01:00
Khushboo Mehta 7dcc704d29 fix(@desktop/wallet): Prepare send modal to display community assets
fixes #12378
2024-01-31 15:48:35 +01:00
Michał Cieślak 6f25499380 chore(Settings/Tokens management): simplify ManageAssetsPanel and ManageCollectiblesPanel by deriving directly from DoubleFlickableWithFolding 2024-01-31 13:51:00 +01:00
Michał Cieślak 2e29e847ac chore(WalletSettings): Use DoubleFlickable for assets/collectibles tabs in manage tokens
It provides visual alignments to the current design and also
significantly improves performance because ListView components
are not "unrolled" causing instantiation of too many delegates.

Closes: #12703
Closes: #13043
2024-01-31 13:51:00 +01:00
Michał Cieślak 8509dd9c67 chore(DoubleFlickableWithFolding): Inline component moved to separate file
Otherwise it would crash tests under Qt 5.15.2
Additionally Storybook page has been extended by adding footers.
2024-01-31 13:51:00 +01:00
Michał Cieślak 9fe60e650f chore(DoubleFlickableWithFolding): Component api and usage simplified
Now the header don't have to be reparented manually. Everything
is done internally in the component. Additionally the usage
in CollectiblesView is adjusted to the change.
2024-01-31 13:51:00 +01:00
Khushboo Mehta ff951f624a fix(@deaktop/wallet): Remove old tokens_service under accounts service and only keep new one.
fixes #13142
2024-01-30 10:56:51 +01:00
Noelia aaa9937124 feat(FirstTokenReceivedPopup): Created new popup `FirstTokenReceived`
- Created new popup component.
- Created related `storybook` page.
- Integration of the popup into the app.

Closes #12366
2024-01-29 12:15:48 +01:00
Lukáš Tinkl 5080499d29 fix: cleanup and fixes after introducing the new assets model 2024-01-26 11:45:24 +01:00
Lukáš Tinkl d7e25ea0a7 feat(Manage Tokens): implement "Arrange by collection"
- simplify the delegates (no more nested inner models/ListViews)
- persist the "Arrange by" toggles state (when needed)
- adjust the tests

Fixes #13232
2024-01-26 11:45:24 +01:00
Lukáš Tinkl 57b3b254b8 feat: Create the hidden tab (to host both assets and collectibles)
- add new Hidden tab/section to Settings/Wallet/Manage tokens page and
storybook
- extract the controller(s) to ManageTokensView.qml to share them across
the tabs
- updated the grouped UI delegate
- adjust the tests

Fixes #13201
Fixes #13188
2024-01-26 11:45:24 +01:00
Khushboo Mehta fb4e9a1ed1 fix(@desktop/wallet): Updatebthe new assets models in Token mangement, Activity filters and SharedAddressPanel 2024-01-25 12:45:22 +00:00
Michał Cieślak 5740826025 fix(DoubleFlickableWithFolding): Adjustments regarding folding flags
Additionally Binding restore mode is set to proper value and the
case where header is not set is handled properly.
2024-01-25 10:05:09 +00:00
Michał Cieślak 501afcd056 chore(Storybook): ManageCollectiblesModel fixed 2024-01-25 10:05:09 +00:00
Michał Cieślak 1a5a908a11 chore(CollectiblesView): Storybook's page layout fixed 2024-01-25 10:05:09 +00:00
Khushboo Mehta 8da6847d42 fix(@desktop/wallet): Uses the new wallet assets in Profile showcase 2024-01-23 23:27:40 +01:00
Khushboo Mehta 087601e28e feat(@desktop/wallet): Apply flat assets model into SendModal
fixes #13016
2024-01-23 20:26:25 +01:00
Noelia 21a33cabd9 feat(Wallet/Toasts): Updated / added toasts related to community tokens received
- Added new role into ephemeral_notification_model: image.
- Added new view API to display ephemeral notifications with image and action.
- Added support to display asset or collectible image in a toast with different shape (circle or square).
- Default values assigned to the new parameters added in `CommunityTokensStore` meanwhile backend is not ready.
- Created page for `StatusToastMessage` in `storybook`.

Closes #13039
2024-01-23 18:40:28 +01:00
Michał Cieślak cbc15b368e feat(StatusQ): DoubleFlickableWithFolding component providing sticky and foldable headers
It's build on top DoubleFlickable, managing two Flickables in an
effective way. It adds specific behavior of foldable and always visible
section headers.

Closes: feat/issue-13193
2024-01-23 17:07:02 +00:00
Michał Cieślak 62857410e6 feat(StatusQ): DoubleFlickable utility making two Flickables operating line one
The wrapper doesn't "unroll" the managed Flickables. There is no
instantiation of delegats for all model entries up front.
2024-01-23 17:07:02 +00:00
Michał Cieślak e51667911d StatusQ: MovableModel proxy for setting custom order over source model
Proxy decorating source mode with additional method move(from, to, count)
similar to that available in ListModel. The custom order is stored within
a proxy, not altering the original model. May be useful whenever UI needs
to allow user to set custom order. Temporary state can be held in the
proxy, and send to the backend when changes are accepted.

Closes: #12686
2024-01-22 16:36:41 +01:00
Alexandra Betouni 7e3ae8dd7a [Wallet - Token management] Extend transactions UI component
Backend #13241

Closes #12375
2024-01-22 11:49:55 +02:00
Dario Gabriel Lipicar 29f1bee218 feat(@desktop/wallet): implement allCollectibles module
Fixes #13235
2024-01-18 13:57:04 -03:00
Lukáš Tinkl 6f3a180f41 feat: Emit notifications when an asset/collectible is hidden in the settings
- emit the signal from the backend
- trigger the toast notification in QML
- update the test(s)

Fixes #12704
2024-01-16 14:00:11 +01:00
Stefan 7f6636dc94 chore(config) rename pokt.network urls to grove.city as required
Closes #13189
2024-01-12 21:23:59 +01:00
Lukáš Tinkl 263ed2a822 feat: Add Advanced settings in new Advanced Tab
... under Settings/Wallet/Manage Tokens

- rename Tokens List tab to Advanced tab
- introduce a new `CurrencyAmountInput` component, backed by
`FormattedDoubleProperty` C++ class (plus the respective SB page)
- use `FastExpressionFoo` for the collectibles views as well

Fixes #12611
Fixes #13040
2024-01-11 14:52:52 +01:00
Alex Jbanca 56f194c96c fix: Updates based on comments 2024-01-09 20:20:04 +02:00
Alex Jbanca 6da897e733 StatusQ: Adding WritableProxyModel
WritableProxyModel is a QAbstractProxyModel that allows you to modify the data without modifying the source model.
It is useful for implementing a "dirty" state for a model, where you can modify the data and then commit the changes
to the source model.

Supported features (reimplemented):
- setData
- setItemData
- removeRows
- insertRows
- moveRows (TODO)
- toVariantMap
- to be continued...
2024-01-09 20:20:04 +02:00
Lukáš Tinkl e2fa5b756a feat(CollectiblesView): Add combobox/popup with custom filtering options
.. to filter by community or collection name

- make the HistoryView own filter button look like the other combos
- fix some cosmetic issues for StatusCombo in small/secondary mode
- fix StatusBaseInput bg color in dark mode (was invisible)
- update CollectiblesViewPage with options to include regular and/or
community collectibles

Fixes #12969
Fixes #12948
2024-01-04 12:32:41 +01:00
Khushboo Mehta 1bd23b027d fix(@desktop/wallet): creating a common grouped model for accounts assets to be used for wallet and profile view
fixes #12601
2024-01-02 20:00:13 +05:30
Lukáš Tinkl fe3b442155 (wallet) implement sorting for assets/collectibles views
- add the sort combobox to assets/collectibles main wallet view pages
- preserve the current view settings
- add the possibility to navigate/drill down into wallet settings
(sub)subsection
- some other minor changes/fixes

Note: currently assets can't be sorted by "1W change" and collectibles
by "Date added" due to missing backend for these

Fixes #12517
Fixes #12518
2023-12-18 10:52:48 +01:00
Stefan a8fb355a8d feat(wallet) activate Wallet connect modal from deep-links
- Open wallet connect modal when the application is opened from a
  deep link
- Add test entry that opens wallet connect modal with mocked
  StatusDesktop app that can be used for testing
- Add tests

Closes #12641
2023-12-12 20:12:53 +01:00
Lukáš Tinkl 80975c80a2 fix(CommunitiesView): display proper member count
turns out the model from the comminitiesModule doesn't contain the
members; use the sectionModel (as in all other places) instead which
already has the correct info

additionally, fix the InviteFriendsToCommunityPopup display, it appeared
empty all the time

Fixes #12967
2023-12-12 11:17:12 +01:00
Lukáš Tinkl d7614beb99 feat(token mgmt): update main wallet view layout with community assets
- update the CollectiblesView.qml view and delegates according to the
latest design
- add CollectiblesView to Storybook
- add new section for Community Collectibles
- (re)use the community badge with tooltip and link action to take the
user to the respective community
- add Community Collectibles info icon + popup
- create context menu for token delegates with actions
(Send/Receive/Manage tokens/Hide)
- add confirmation popups when hiding a single or all community tokens
- emit a toast bubble after hiding the token(s)
- fix eliding the community name inside ManageTokensCommunityTag
- some smaller fixes/cleanups

Fixes #12519
2023-12-06 11:18:36 +01:00
Michał Cieślak e2fa702ec4 feat(StatusQ): QML-oriented proxy model concatenating source models vertically
Closes: #12682
2023-12-05 22:45:08 +01:00
Noelia c2bfc6b8f4 feat(SQ/Aggregator): Created utility `Aggregator`
- Abstract class created: `Aggregator`
- Derived abstract class created: `SingleRoleAggregator`
- Derived class created:  `SumAggregator`
- `Storybook` page created.
- Added unit tests.

Closes #12685
2023-12-01 18:57:01 +01:00
Stefan 17c7e46917 feat(wallet) Wallet Connect: process delete_session
Requires the specific status-go changes that brings WCChangePairingState

Process delete session and update internal pairing history state

Updated testing while fighting for the issue of not deleting the session
Found out that the client requests a different topic in the delete
session request.

Also:

- update debugging UX to support session events
- update storybook to support mocking session events
- fix go test utility to account for refactoring

Updates #12858
2023-11-30 10:47:41 +01:00
Lukáš Tinkl 3b60506460 feat(token mgmt): update main wallet view layout with community assets
- update the AssetsView.qml view and delegates according to the latest
design
- add AssetsView to Storybook
- add new section for Community Assets
- (re)use the community badge with tooltip and link action to take the
user to the respective community
- add Community Assets info icon + popup
- create context menu for token delegates with actions
(Send/Receive/Manage tokens/Hide)
- add confirmation popups when hiding a single or all community tokens
- emit a toast bubble after hiding the token(s)
- plus related controller/backend methods for handling the
settings-related actions
- some smaller fixes/cleanups

Fixes #12369
Fixes #12372
2023-11-29 16:13:08 +01:00
Stefan 5b9e4faa8a feat(wallet) run WebEngineView as a service in background
This is required to control the resource consumption in case of no
usage of wallet connect
Hence we load the WebEngineView only if we have active pairings and
such that SDK events are expected from the paired dapps.

Also:

- Moved the generic WebEngineView communication bridge to StatusQ
- Added basic tests for WebEngineLoader
- Add a way to know when wallet is loaded (`walletReady`)
- Add storybook support for mock of nim sections as context properties

Updates: #12639
2023-11-27 22:54:11 +01:00
Noelia 743ba6929c feat(MintToken): Validation on name / symbol if exists in standard token list
- It adds link to the corresponding tokens model in `EditCommunityTokenView`.
- It adds validation for `name` and `symbol`.
- It updates `storybook accordingly.`

Closes #12365
2023-11-23 12:07:46 +01:00
Lukáš Tinkl 8791d028e6 feat: Integrate the new manage assets/collectibles panels into Settings
- display a customized floating bubble to save/apply the settings
- display a toast message on Apply with an action to jump to Wallet main
page
- add home/end/pgup/pgdown keyboard shortcuts to StatusScrollView to be
able to navigate more easily in long list views
- some smaller fixes and cleanups in wallet and settings related views

Fixes https://github.com/status-im/status-desktop/issues/12762
2023-11-22 18:29:31 +01:00
Khushboo Mehta 26f29a4fe6 chore(@desktop/wallet): Unifying the various "TokensTypes" across the app
fixes #12501
2023-11-21 13:02:26 +01:00
Lukáš Tinkl ba30afd202 feat: Manage Collectibles panel UI component & model
- implements a QML panel to organize collectibles
- factors out the delegates to separate files to be reusable with the
Assets tab
- adds QML tests to assess the UI functionality (move, show/hide, save/load)
- does not cover the problematic "Arrange by collection" switch (TBD
later)

Fixes: https://github.com/status-im/status-desktop/issues/12379
2023-11-17 14:12:48 +01:00
Stefan 783a755230 feat(wallet) integrate Wallet Connect sign APIs
Bump status-go that brings the sign APIs support for send transaction
and personal sign

Extend SDK

- simple SDK event handling in QML
- support session request response APIs
- pairing management

Closes #12637
2023-11-15 17:21:27 +01:00
Stefan bcf5b64298 feat(wallet) Wallet Connect Pair integration
Implement Controller to forward requests between status-go and SDK
implementation in QML.

Other changes:

- Source Wallet Connect projectId from env vars
- Mock controller in storybook

Updates #12551
2023-11-15 15:51:50 +01:00
Khushboo Mehta b315d8b9b8 chore(@desktop/wallet): Wallet: explore streamlining "all tokens model" spread across different sections
closes #12424
2023-11-15 10:40:36 +01:00