Commit Graph

359 Commits

Author SHA1 Message Date
Lukáš Tinkl 1c255175ab feat(ProfileContextMenu): Add "Mark as Trusted" and "Remove trusted mark"
- enhance and fix the SB page to be able to show all the permutations,
including profile image, emoji hash and ring

Fixes #16586
2024-11-19 15:51:55 +01:00
Michał Cieślak 74113cbbe1 ProfileContextMenu.removeNickname signal aligned 2024-11-13 09:49:07 +01:00
Michał Cieślak b09713a53d ProfileContextMenu: unnecessary calls to store removed when opening menu 2024-11-13 09:49:07 +01:00
Michał Cieślak 544f749f44 ProfileHeader and related components refactored to use compressed key directly 2024-11-13 09:49:07 +01:00
Michał Cieślak f3021ec757 Global signal related to contact popups simplified
Global.openContactRequestPopup
Global.openReviewContactRequestPopup
Global.openNicknamePopupRequested
Global.blockContactRequested/unblockContactRequested
Global.openMarkAsUntrustedPopup
Global.removeContactRequested
Global.openMarkAsIDVerifiedPopup/openRemoveIDVerificationDialog
2024-11-13 09:49:07 +01:00
Michał Cieślak b8f9566116 UserImage refactored to remove dependency on backend via Utils 2024-11-13 09:49:07 +01:00
Lukáš Tinkl 623333ab8c fix: improve image type detection
- use the same approach as status-go to detect the image type, relying
on "magic" type matching instead of looking at the file extension (now
using C++ and QMime*)
- add a little error popup when the user tries to upload an unsupported
image type while creating/editing a community
- expose all the image related properties from the C++ backend instead
of constructing and duplicating them in QML
- cleanup some unused/dead code

Fixes #16668
2024-11-04 10:29:01 +01:00
Michał Cieślak ba80ba97f7 compressedPubKey exposed via backend models, usages of Utils.getCompressedPk removed, SB pages simplified 2024-10-31 11:11:30 +01:00
Michał Cieślak 143cf63dc0 Community invite flow: dependency on stores reduced 2024-10-31 11:11:30 +01:00
Michał Cieślak ff5e1654ec Unused hasAddedContacts property removed from multiple components 2024-10-31 11:11:30 +01:00
Jonathan Rainville a466747c5e
fix(airdrop): fix wording of the error when selecting the wrong account (#16632)
Fixes #16562
2024-10-30 11:45:20 -04:00
Jonathan Rainville d511c25d2e
remove old code about ID verification and fix trustStatus bug (#16548)
* chore: remove old code about ID verification

* refactor(trust): remove untrustowrthy and isVerified from items and use trustStatus

* chore(status-go): up status-go to get fix for trustStatus reseting

Fixes #16392

* chore: remove verified/trusted profile showcase category
2024-10-29 14:08:12 -04:00
Lukáš Tinkl ab92672deb fix: Share community link is gone
- pass the correct community ID

Fixes #16637
2024-10-29 12:58:56 +01:00
Lukáš Tinkl fe9fa7d086 fix(PermissionsSettingsPanel): fix initial view being too wide
Fixes #16617
2024-10-29 10:36:55 +01:00
Lukáš Tinkl bd6289d4f2 feat(CommunitySettingsView): add "Invite ppl" button
- this adds direct access to sending invitations to new ppl (aka adding
members), instead of going thru the secondary nav context menu
- the new community context menu will be tackled in a separate
task/issue

Fixes #16597
2024-10-29 10:11:51 +01:00
Michał Cieślak 4c7205fc5d getEmojiHashAsJson moved from Utils to UtilsStore 2024-10-28 23:16:31 +01:00
Michał Cieślak a76ae0ade6 isCompressedPubKey moved from Utils to UtilsStore 2024-10-28 23:16:31 +01:00
Jonathan Rainville f7823cd0b7
refactor(members): unify members models into one (#16508)
Fixes #16433
2024-10-25 21:25:50 -04:00
Lukáš Tinkl d9d6d90dc9 [Style] remove legacy Style and its themes
- legacy Style and ThemePalette removed
- moved and deduplicated font definitions into `Theme` (unrelated to a
color palette)
- `Style.current.foo` -> `Theme.foo`
- `Style.current.fooColor` -> `Theme.palette.fooColor`
- upgrade the imports to 5.15
- removed some mode dead components

Fixes #16514
2024-10-22 15:54:31 +02:00
Michał Cieślak c22a15e8fa Backend-dependent content removed from Constants, userProfile removed from Global
Closes: #16459
2024-10-16 23:02:02 +02:00
Michał Cieślak 02993196e9 References to Global.userProfile removed from multiple components 2024-10-16 23:02:02 +02:00
Michał Cieślak 8fb9440235 ContactsStore: getProfileContext simplified 2024-10-16 23:02:02 +02:00
Lukáš Tinkl 26dddcaff9 feat(CreateCommunityPopup): validation and ensuring min. 1 tag added
- enable the Next button, and delay the validation after it's been clicked
- visually display required fields also for logo, banner, and tags (min
1 tag is required now)
- when pasting over limit, chop the text to the maximum length, instead
of just leaving the text field empty
- do not let the popup autoclose on clicking outside or pressing Esc
- add a StoryBook page
- minor cleanups and alignments to the latest Figma designs/flows

Fixes #13966
Fixes #16479
Fixes #14902
2024-10-14 11:39:58 +02:00
Lukáš Tinkl 28e9b6da27 fix(CommunityMemberMessagesPopup): fix displaying of messages
- fix a refactoring bug in the stores
- disable the context menu since it's not really usefull and we're still
missing like a dozen of stores needed for MessageView anyway
2024-10-10 21:50:58 +02:00
Jonathan Rainville 0bb2bc0e03
Fix some of the freezes experienced by the admins when the community updates (#16384)
* fix: force focus on search inputs in permissions and sort members
* fix(admin): fix freezes when community gets updated
* fix(airdrop): use FastExpressionFilter to speed up

Iterates #16043

When the community gets updated by any means, we reconstruct the section item, which is already bad, but we also re-fetch all tokens and all shared addresses, which in turn re-updates models for no reason.

Instead, I make sure to only fetch those on first section build, then, I get the new shared addresses when members join using the request to join response that comes from status-go
2024-10-10 13:01:47 -04:00
Lukáš Tinkl 235162dc01 fix(community): Token gating info when permission not met and set to private
- hide the permission from the `PermissionsRow` when it's set to private
and the conditions are not met
- display a tooltip "(Not) eligible to join" over the lock icon
- show the same info in both community portal and profile dialog's
community showcase tab
- speedup searching/filtering in the community portal
- fixup and extend the SB pages to demonstrate the new behavior

Fixes #14747
2024-10-07 12:09:23 +02:00
Michał Cieślak 9503def18b chore: applicationWindow property removed from Global singleton
Closes: #16455
2024-10-05 14:15:35 +02:00
Michał Cieślak 2af0d6668b stores: access shared/RootStore via explicit property instead of singleton 2024-10-03 20:08:32 +02:00
Lukáš Tinkl 277f408e0c fix(ProfileContextMenu): stop leaking memory
- got removed in a recent refactoring, restore it
- when a context menu component is opened via `Global.openMenu()`, it
has to be destroyed manually
2024-10-03 14:34:12 +02:00
Lukáš Tinkl 2c46764829 fix(MembersTabPanel): Buttons in the Member tab do not work
- move the MouseArea into `background` so that it doesn't obscure the
potential action buttons
- fixup SB page

Fixes #16426
2024-10-03 14:34:12 +02:00
Jonathan Rainville 1cad66bb2c
perf(admin): speed up admin tabs significantly (#16363)
Iterates #16043

* fix(admin): improve admin panel loading by putting sections in loaders

* fix(admin): speed up members tab by using nim model and real search

* fix(admin): speed up airdrop panel

* fix(admin): mint panel and airdrop panel interactions and previous btn

* fix(admin): speed up overview page

* fix(admin): speed up permissions page
2024-09-27 13:28:27 -04:00
Iuri Matias 7a6144f11a fix issue with menu option not working on community members panel; update nickname 2024-09-24 10:04:10 -04:00
Iuri Matias 96d0760488 refactor ProfileContextMenu to make it a functional component
refactor ProfileContextMenu to make it a functional component

refactor ProfileContextMenu to make it a functional component

refactor ProfileContextMenu to make it a functional component

This refactor ProfileContextMenu to make it a functional component by:

refactored out direct calls to backend, and passing backend data structures and moved this logic to the callers, also refactored common calls between the callers
common types of context menus have been extracted to their sub components which removes a lot of logic too and makes the behaviour very clear
user verification workflow (which was already disabled) has been removed

refactor: use signals and call singletons on the parent instead

remove unused code for now from profile context menu

refactor profile context menu into two components; add property to storybook

extract blocked profile context menu and self profile context menu

use profileType instead of individual bools

refactor to pass trustStatus as an argument

make contact type a parameter

remove unnecessary method from RegularProfileContextMenu

add ensVerified property to ProfileContextMenu components

add onlineStatus property to ProfileContextMenu components

move ProfileContextMenu storybook controls to the right sidebar

move contactDetails logic up from the view

add local nickname property to ProfileContextMenu components

fix issue with missing signal; fix logs in storybook

use constant for profileType instead of string

refactor common code into a single method

refactor getProfileContext

remove references to contactDetails which are not longer needed

remove unnecessary comments

fix bridged constant

refactor into a single ProfileContextMenu component

refactor into a single ProfileContextMenu component

refactor into a single ProfileContextMenu component

simplify imports

remove unused store field

move methods from utils to contacts store

remove onClosed signal

remove unused param

rename ProfileContextMenu variables

simplify signals in ProfileContextMenu

remove ;

refactor: do early return

simplify ifs

move ProfileContextMenu to its own storybook page

fix wrong params

fix profile context menu separator

add missing signals to profile context menu on the members tab panel
2024-09-24 10:04:10 -04:00
Lukáš Tinkl 4206617d9e fix(MembersTabPanel): unbreak context menu
- restore backwards compatibility; a lot of the actions in the component
relies on the old StatusListItem's `title` property to work correctly
- fixes the missing image and name in the profile context menu, among
others

Fixes #16367
2024-09-23 17:35:37 +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
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
Michał Cieślak 01a24e1b19 TokenSelectorNew decomposed into smaller, reusable subcomponents 2024-09-05 08:55:15 +02:00
Michał Cieślak 7c24d19241 Usages of SubmodelProxyModel migrated to ObjectProxyModel 2024-09-02 20:20:10 +02:00
Michał Cieślak a8940a71f5 Using ClipboardUtils.setText instead of nim's copyToClipboard 2024-08-29 15:46:17 +02:00
Cuteivist 658fe2a5b4
fix(wallet): Update collectibles media management (#16080) 2024-08-28 15:58:33 +02: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
Sale Djenic 9aac6bbcdb fix: fixed issue with no fees when minting community token 2024-08-22 12:19:16 +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
Valentina1133 44281aabd0
test: community ban member steps added (#15845) 2024-07-30 12:44:35 +07: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
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
Jonathan Rainville a357299928
chore(beta): hioe ENS community permission creation (#15664)
Fixes #15663
2024-07-19 14:45:40 -04: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
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