Commit Graph

675 Commits

Author SHA1 Message Date
Alexandra Betouni 3e0a01883f feat(CommunityPemissions): Added chat input post rights panel
Closes #9436
2023-06-20 20:19:55 +02:00
Igor Sirotin f17e49fe32
fix: Community settings member context menu (#11150) 2023-06-20 10:14:25 +03:00
Ivan Belyakov a7b78bb6e8 feat: Add scrolling velocity and deceleration settings to advanced
settings.
Fixed RadioButtonSelector using anchor.margins
2023-06-16 15:54:33 +02:00
Mikhail Rogachev fecf58102c
feat(Communities): Request to join should ask for a wallet password (#10967) 2023-06-16 15:02:03 +04:00
Michal Iskierko d57485c6e9 feat(@desktop/communities): Add burning collectibles functionality
Burn collectibles.
Displaying burning fee.
Displaying remaining supply.

Issue #10816
2023-06-15 17:11:15 +02:00
Igor Sirotin 407179cd10
fix(ChatColumnView): hide input when no active chat (#11107) 2023-06-15 16:58:32 +03:00
Michał Cieślak e0dd0b82ce feat(Community Airdrops): Dynamic fee calculation in the airdrop form
Closes: #10547
2023-06-15 14:32:52 +02:00
Noelia d4ba22f7bb feat(AirdropAssets): Enable assets tab in airdrop dropdown
- Added assets model.
- Added no data text for assets tab.
- Added navigation from airdrop to mint specific tab.
- Updated `HoldingsDropdown` component to allow network information for assets.
- Removed `isCollectiblesOnly` option in `HoldingsDropdown`. No longer needed.
- Updated `storybook` to support airdrop assets testing.

Closes #11056
2023-06-15 14:04:08 +02:00
Lukáš Tinkl 7bf7f272f3 fix: community context menu should not say "Leave community" if not joined
- differentiate between "Close" and "Leave" a community where the former
applies to spectated communities
- move the "leave community" confirmation popup to a shared place
(Popups.qml), extend it with the outro message and reuse it everywhere
- don't let admins leave a community
- some minor cleanups and dead code removals

Fixes #10963
2023-06-15 12:22:04 +02:00
Mykhailo Prakhov 82a1ed2f7a
feat(@desktop/community): Community admin permissions (#10909)
* chore:
- replaced admin bool to memberRole
- activate admin permissions
- configured admin restrictions
2023-06-14 18:00:41 +02:00
Igor Sirotin 4849230054
fix(ChatColumnView): fix input `Unblock` button state (#11073) 2023-06-14 18:09:46 +03:00
Michał Cieślak 8b44e686f4 feat(CommunityAirdrops): Fees popup with multiple entries for airdrops
Closes: #10484
2023-06-14 12:59:05 +02:00
Michal Iskierko db55d10b37 feat(@desktop/communities): Compute minting fees and displaying minting toast messages
Issue #10536
2023-06-14 10:44:57 +02:00
Noelia 523ddd0572 fix(MintToken): Network is not correctly initialized when the new token form is prefilled
Added initialization tor network combobox.

Fixes #11030
2023-06-14 08:57:10 +02:00
Noelia 5e4164e2e6 fix(MintToken): Validation rules reviewed
- Updated name and description regex rules.
- Extended name and symbol validation when retry minting to allow same text if we are in edition mode.

Fixes #10860
2023-06-13 15:57:20 +02:00
Noelia 7d551b8311 feat(MintToken): Add navigation from retry to filled token form
Enable navigation from token view to new token view (edition).

Closes #10878
2023-06-13 15:57:20 +02:00
Noelia f58f82d4c6 refactor(MintToken): Mint token views refactor
- Created `TokenObject` files and use them inside `CommunityNewTokenView` instead of plain properties.
- Updated `CommunityTokenView` to use `TokenObject` properties instead of plain properties.
- Updated store calls to use `TokenObject` properties instead of plain properties.
- Remote destruct properties renames.
- Airdrop navigation extended passing token type (asset or collectible).
- Updated `storybook` according to new changes.
2023-06-13 15:57:20 +02:00
Michał Cieślak 8102600c5b feat(CommunityMintTokens): Using sortable list of tokens holders
New list contains also dropdown menu with some actions, basic
integration is done for holder types and actions supported currently
by the backend.

Closes: #10621
2023-06-13 12:37:10 +02:00
Lukáš Tinkl 0f9f5de267 fix: [chat] @mentions no longer working
fixup undefined references which caused the users model to become
empty

Fixes #11005
2023-06-08 16:19:53 -04:00
Noelia 8d7ff095dd fix(MintToken): App crash when trying to create new token
Accounts `color` role was changed to `colorId` so, `CommunityNewTokenView` has been updated accordingly.

Closes #10991
2023-06-08 15:50:15 +02:00
Boris Melnik 73eb12c914 feat(communities): Adds mute category interval
Part of: #9369
2023-06-08 00:16:54 +03:00
Igor Sirotin bc4492b53a
fix: Create only one instance of `StatusChatInput` (#10928)
* Chat input area preserved properties
* Fix emoji/gif/stickers popups open/close logic
2023-06-07 16:18:29 +03:00
Alexandra Betouni 3227d5afb4 fix(Communities): resolved popup warning
Closes #10952
2023-06-06 18:32:03 +03:00
Pascal Precht 0b280f090e refactor(communities): remove legacy pending membership indicator
We no longer want to show pending membership requests in the left column
of the layout. Instead, community owners need to go to the community
settings -> members -> Pending requests

This however does not remove the legacy membership popup yet because
it's still used when users click the OS notification of incoming
community requests to join.

We don't yet have a mechanism to make the app navigate specifically to
that section of the community settings.
2023-06-06 09:07:53 +02:00
Igor Sirotin f86608287c
Fix/issue 10905 (#10930) 2023-06-06 09:57:00 +03:00
Patryk Osmaczko 35a2dd5244 [Popups]: added destroy() function in all popups by default
Also switched StatusModal to derive from StatusDialog instead
of Popup type

Closes #10149
2023-06-02 14:28:39 +03:00
Noelia d4d3a6d669 feat(MintToken): Add `delete` and `retry mint` options when deploy fails
- It refactors `SettingsPageLayout`.
- It adds `retry mint` and `delete` options when deploy process fails.
- It renames `RemotelyDestructAlertPopup` to generic name `AlertPopup`.
2023-06-02 13:15:34 +02:00
Noelia 8ae2d29a1c feat(MintToken): Use `contractUniqueKey` instead of index
Updated minting flow to use `contractUniqueKey` instead of `index`.

Closes #10765
2023-06-02 13:15:34 +02:00
Noelia 86a0e8b9ec feat(MintAssets): Update minted tokens view with assets
- Added assets list UI.
- Added shape rectangle for empty lists.
- Added filter by asset / by collectible
- Updated storybook accordingly.
- Added flow to open token view depending on type

Closes #10625
2023-06-02 13:15:34 +02:00
Jonathan Rainville ceb810e63d fix(contacts): fix inconsistency when banning or unbanning contact
Fixes #10501

The problem was that didn't have access to the updated contact from status-go after banning or unbanning, so we just changed the banned property, but there is more that gets changed in the backend, like `removed` being set to `true` as well.
With this fix, when you unban someone, you go back to a fresh start, as **non** contact, so you need to send a request again. That was the state you got if you restarted the app, so "re-sync" the state with status-go.
Another issue was on the frontend (QML). When banned,  and after restarting to get the right state, the unban button would be disabled and the Add contact request button would show, which is not good. We only want to send requests when unbanned.
2023-06-01 14:25:20 -04:00
Jonathan Rainville fa656c9535 feat(NewChat): open contact popup when pasting key of user in request
Fixes #9736

When pasting the chat key of a user to whom you already sent a request to, but for which they haven't answered yet, we open the popup instead of doing nothing.
If you paste the chat key of a user you are not a contact at all and sent no request, it opens the contact request popup as before.
Also, same as before, if you paste the key of a mutual contact, their name will show in the suggestion list.
2023-06-01 10:51:39 -04:00
Igor Sirotin 7eed470829
fix(StatusScrollView): Change implementation to inherit ScrollView (#10789) 2023-05-31 23:58:23 +03:00
Michal Iskierko 4c29343a4a feat(@desktop/communities): Add self-destruct tokens functionality
Issue #10052
2023-05-31 12:43:36 +02:00
Noelia 9f8275ce5c feat(MintAssets): Create mint assets flow
It creates mint assets flow:
- Preview integrated.
- Mint call and sign transaction popup added.

Closes #10624

a
2023-05-31 08:18:26 +02:00
Noelia 775a93e82c feat(MintAssets): Created preview assets page
- Updated `CommunityTokenView` with assets design.
- Updated storybook to test assets design.

Part of #10624
2023-05-31 08:18:26 +02:00
Noelia 00bdb0ff15 feat(storybook): Added option in `CommunityNewTokenView` to switch between collectibles and assets
It is now possible to visualise collectibles or assets flow in the storybook page.
2023-05-31 08:18:26 +02:00
Noelia 992e1e6b13 feat(MintTokens): Renamed preview collectible view to token generic naming
`CommunityCollectibleView` is now renamed to `CommunityTokenView` since it will manage collectibles but also assets.
2023-05-31 08:18:26 +02:00
Boris Melnik 91bdb5824b feat(mute): Adds intervals for muting channels and chats
Part of: #9369
2023-05-30 16:43:48 +03:00
Boris Melnik 92a9c41238 fix(invitation-bubble): Adds loading state for unfurling links
Fixes: #10422
2023-05-25 12:33:54 +03:00
Noelia 2f5a76db02 feat(MintTokens): Renamed new collectible view to token generic naming
`CommunityNewCollectibleView` is now renamed to `CommunityNewTokenView` since it manages collectibles and assets.
2023-05-25 11:11:44 +02:00
Noelia dbc3effe94 feat(MintTokens): Added validation rules in `CommunityNewCollectiblesView` page
Added new validation rules for name, description, symbol, supply and decimal fields according to new design.

Closes #10623
2023-05-25 11:11:44 +02:00
Noelia 6abb9f0063 feat(MintAssets): Create new asset page / flow
- Added tabs.
- Updated pages with new entries.

Part of #10623
2023-05-25 11:11:44 +02:00
Alexandra Betouni 06b4b28145 [CommunityPermissions]: Added drag/drop image panel as per new design
Closes #10609
2023-05-24 20:31:10 +03:00
Noelia 12faa752bd feat(MintToken): Implement UI burn footer option
- Burn footer option enabled.
- Integrated `BurnTokensPopup` in mint tokens flow.
- Integrated `SignTokenTransaction` in burn flow (added needed signals to interact with backend).

Closes #10050
2023-05-24 17:17:40 +02:00
Boris Melnik 0ba7f1d609 feat(communities): Makes requestToJoinCommunity async
Fixes: #10719
2023-05-23 07:33:44 -04:00
Igor Sirotin 5ff4b5a435
fix(MessageContextMenu): Cleanup. Separate menu for profile. (#10729) 2023-05-19 19:07:50 +03:00
Noelia 92f77e5fd9 feat(MintTokens): Add mint failure flow
- It updates `CommunityCollectibleView` to display minting failure state.
- It updates `CommunityMintedTokensView` to display minting failure state.
- It exposes subtitle color property in `CollectibleView`.
- It updates `storybook` with more options to display minting failure state.

Closes #10620
2023-05-18 17:06:25 +02:00
Noelia 6e2d552220 feat(MintToken/RemoteDestruct): Added animation when `remotely destroy` process is in progress
- Added property `remotelyDestructState` and `burnState` in `CommunityCollectibleView`.
- Added `fire` and `loading` icons while destruct/burn is in progress.
- Added short animation when destruct/burn process is completed.
- Renamed `Constants.DeployState` to `Constants.BackendProcessState`, more generic one that can be used for different processes.
- Updated `storybook` with new options to test animation.

Closes #10603
2023-05-18 15:28:44 +02:00
Noelia cd4ddb5a06 fix(Airdrop): Navigation from community settings overview to airdrop option enabled
Fixes #10659
2023-05-17 11:13:07 +02:00
Boris Melnik e34d28f881 fix(member-selector): Adds filter suggestions by chat key pasted in input
Fixes: #9881
2023-05-16 16:41:18 +03:00
Noelia e0acf0f195 feat(MintTokens): Update `CommunityCollectibleView` according to new design
- Title format changed. Now symbol is a title side text.
- Back button text changed.
- Description / boxes order changed.
- Boxes changed order and format.
- Warning description changed.

Closes #10601
2023-05-16 13:07:56 +02:00
Noelia a93d2f8387 fix(MintTokens): Update Create new collectible page according to new design
Strings and focus updates.

Fixes #10597
2023-05-15 14:27:16 +02:00
Noelia 60acb43249 feat(MintToken): Updated collectible subtitle information
Added available tokens and total supply as subtitle information in minted collectibles view.
Updated storybook model with new property `availableTokens`.

Closes #10606
2023-05-15 13:36:16 +02:00
Michał Cieślak 6fcb533b68 chore(MembersDropdown): Search behavior adjusted 2023-05-12 16:37:01 +02:00
Khushboo Mehta a57c0b414b feat(@desktop/wallet): New Account header
fixes #10330
2023-05-10 16:02:37 +02:00
Noelia 21abe5fca7 feat(EditCroppedImagePanel): Extended to be able to drag/drop images
Added `DropArea` to enable drag/drop images.
2023-05-10 09:48:51 +02:00
Noelia 6602ab15e2 feat(MintToken): Add param `artworkCropRect` in the UI minting chain
Added new parameter `artworkCropRect` from initial UI mint signal to the store.
2023-05-10 09:48:51 +02:00
Noelia 7bcf42a7ed feat(MintTokens): Artwork image field missing cropping tool
Replaced basic image selector to `EditCroppedImagePanel` component in mint token workflow.

Extended `NoImageUploadedPanel` to allow custom texts and some sizing improvements.

UI part of #10317
2023-05-10 09:48:51 +02:00
Mikhail Rogachev 890e0aa2bd
fix(Chat): Reuse chat root store connections and fix chat quick actions when blocked (#10577)
Close #10570
2023-05-09 14:31:50 +04:00
Michał Cieślak a5d339eb45 chore(CommunityNewAirdropView): Adjust MembersDropdown to updated design 2023-05-08 11:44:10 +02:00
Michał Cieślak 1f3ae975fc feat(CommunityNewPermissionView): red highlight for tokens with inssuficient balance and warning msg panel 2023-05-08 11:44:10 +02:00
Michał Cieślak 27aac8d83a feat(CommunityNewAirdropView): design-compliant token airdrop flow for collectibles 2023-05-08 11:44:10 +02:00
Michał Cieślak aa039a859e feat: SequenceColumnLayout component added 2023-05-08 11:44:10 +02:00
Noelia 42a5236b10 feat(SelfDestructPopup): Updated self destruct tokens lists management
- Updated expected model roles (removed `selfDestruct` and `selfDestructAmount`)
- Self destruct tokens list management is now done inside `SelfDestructPopup).
- Store receives a js array with {walletAddress, amount} roles.
2023-05-05 14:05:31 -04:00
Michal Iskierko 2087616b82 feat(@desktop/communities): Adding token owners model
- replace qml owners model with Nim one
- get token owners from wallet service
- keeping owners cache in community_tokens/service and refresh every 10 minutes

Issue #10254
2023-05-05 14:05:31 -04:00
mprakhov 60bd0d2a6c feat(@desktop/communities): Automaticaly encrypt closed communitites 2023-05-05 19:04:29 +02:00
Alex Jbanca a674ec57a8 fix(blockChat): Disable chat input when minimal conditions are not met 2023-05-05 19:44:39 +03:00
Jonathan Rainville 0e5c566dcd fix(newChat): fix sending messages in new ad hoc chat with new store
Fixes #10523

The problem was that the CreateChatView now uses an isolated Chat RootStore, since we can't be sure if the personal chat section will be loaded yet.

To fix that, I created a new store that is only for storing the properties needed for that new chat. That way we are sure that it is created and shared to necessary components.
2023-05-05 09:36:14 -04:00
Anastasiya S 81a79327b6 test(tst_communityPermissions): implement permissions screen validation 2023-05-05 15:48:56 +03:00
Boris Melnik 6464366c7d fix(CommunitySettingsView): Fix community settings after removing old legacy popup ref 2023-05-05 15:30:45 +03:00
Boris Melnik 7e4419d239 chore(CommunitySettings): Remove old legacy community popup
Fixes: #9913
2023-05-04 12:14:39 -04:00
Igor Sirotin bb6e87deec
fix(ImportCommunityPopup): Support community link (#10557) 2023-05-04 18:37:44 +03:00
Michal Iskierko a73ea4604e fix(@desktop/communities): Fix double toast message
Fix #10486
2023-05-04 10:28:43 +02:00
Lukáš Tinkl b07ba7fb2d fix: personal chat item wrong width
- do not hardcode width of child elements (impossible to propagate
setting the width from the toplevel/parent component)
- made both the community and non-community chat item look the same and
according to the Figma designs (including margins, scrollbar positions,
spacing etc)
- cleaned up some hardcoded values and dead code

Fixes #10469
2023-05-03 16:39:33 +02:00
MishkaRogachev 7b31929f85 feat(Chat): Accept/Reject CR buttons for 1-to-1 chat 2023-05-02 13:56:36 -04:00
MishkaRogachev 0fc84852f3 feat(chat): Update chat ui for the blocked contact
Close #9935
2023-05-02 13:56:36 -04:00
Boris Melnik df88984b45 feat(image-album): Display album of images in replies
Fixes: #9957
2023-05-02 11:24:48 +03:00
Lukáš Tinkl e1c9f2f93f perf(AppMain): wrap CommunitiesPortalLayout in a Loader
- CommunitiesPortalLayout was the last piece still unconditionally loaded
on startup -> fixed
- extract the `communitiesStore` into AppMain to be able to reuse it from
other components
- move the import/create community dialogs to `Popups` (reusability)
- cleanup and remove some dead code, fix warnings

Iterates #6204
2023-04-28 21:35:29 +02:00
Alexandra Betouni 5615a534ea (settings): removed community permissions,tokens,airdrop and discord options
Also:
test(suite_communities): Fixed community related tests

- A new intermediate popup is now displayed when user clicks on `Create New Community` button from `Community Portal`.
- Reformulated `tst_communityPermissions` since now it is a default option without the need of activating it from experimental feature's section.

Closes #10115
2023-04-28 16:52:41 +03:00
Lukáš Tinkl 28374eb836 fix(ChatColumnView): unbreak 1-1 chats
the StatusChatInput (among other things) was disabled due to wrong
`activeChatType` being passed down to `ChatContentView` which does all
sorts of checks whether we are allowed to chat with that contact

The `root.activeChatType` no longer reflects the chat that we are going
to activate (probably due to the extensive use of `Loader`s)

(plus remove some dead code)

Fixes: #10463
2023-04-27 20:44:41 +02:00
Noelia 8ca70ea018 feat(Community Permissions): Update ENS icon in permission pills
Closes #10341
2023-04-27 16:10:20 +02:00
Igor Sirotin 6fe82ef133
fix: Fix and rework "start chat" text field input (#10450) 2023-04-27 17:03:49 +03:00
Lukáš Tinkl 9aebf588a1 fix: reduce Image cache
for everything that's not a user interface element, esp. for static/big
images or chat/message elements which get served from locally anyway from
status-go

Iterates #10339
2023-04-27 13:56:39 +02:00
Jonathan Rainville db6af0554a fix(chat-model): use setData to set the chat model
Fixes #10384

The problem was that doing the sort inside the insertRows messed up the model.
I removed it and it fixed the issues. However, it created an other issue with ordering.

The problem this time is that when populating the model at the start, we do not get the chats in order, so calculating the right position to insert a chat is difficult.

Instead, I use a setData function to just put all the chats in the items list, sort it and call it done, using the resetModel function.

I also did some clean ups.
2023-04-24 11:06:17 -04:00
Jonathan Rainville 435b08501b refactor(ChatContentView): only get contact details when 1-1 chat 2023-04-24 09:31:00 -04:00
Patryk Osmaczko c867e8f98c fix(chat): wrap `contextMenu` and `chatInput` into Loader
Please note that this solution serves as a temporary workaround and
comes with variety of limitations, particulary concerning the chat
input state. For instance, the reply area is not retained when switching
between chats.
Ideally the root cause, which is the high memory consumption of both
`StatusChatInput` and `MessageContextMenuView`, should be fixed. Once
this issue is addressed, the current workaround can be reverted.

fixes: #10378
2023-04-21 11:38:36 +02:00
Lukáš Tinkl 038ab08765 fix: do not display ENS name when not ENS verified
- expose "isEnsVerified" as model role
- fix returning "ensName" when the user is not ensVerified
- react to nickname updates correctly
- fix sorting in the user/member list view
2023-04-21 00:24:32 +02:00
Stefan 691de11211 fix(Wallet) network selection and unify network implementations
Major changes:

- Don't allow empty network selection. End up using the nim model
  directly instead because of individual row changes issues
  encountered with nim models
- Made the clone model a generic implementation to be used in other
places where we need to clone a model: ReceiveModal,
AddEditSavedAddressPopup
- Use cloned model as alternative to NetworksExtraStoreProxy in
  ReceiveModal
- Added tristate support to our generic checkbox control
- UX improvements as per design
- Fix save address tests naming and zero address issue
- Various fixes

Notes:
- Failed to make NetworkSelectPopup follow ground-truth: show partially
  checked as user intention until the network is selected in the
  source model. Got stuck on nim models not being stable models and
  report wrong entry change when reset. Tried sorting and only updating
  changes without reset but it didn't work.
- Moved grouped property SingleSelectionInfo to its own file from
  an inline component after finding out that it fails to load on Linux
  with error "Cannot assign to property of unknown type: "*".".
  It works on MacOS as expected

Closes: #10119
2023-04-20 19:34:24 +02:00
Noelia 73b2ec2903 feat(Mint/Airdrop Collectible): Implement Airdrop footer option
It enables navigation from mint token page to airdrop page selecting a specific collectible to be airdropped.

It is now used `symbol` property as the identifier for a collectible but will be needed to update it to `key` once this key property is build in backend by hash(chainId + contractAddress).

Closes #10047
2023-04-20 11:57:29 +02:00
Alexandra Betouni f507e33cba feat(StatusChatList): adding drag n drop functionality
Closes #3364
2023-04-19 12:26:15 -04:00
Patryk Osmaczko 7f3a66b68d fix(chat): correct `isAdded` behavior
`isAdded` for specific chat was always reflecting the active chat
property, effectively causing the chat inputs of these chats to be
disabled and, as a consequence, making the input vanish.

fixes: https://github.com/status-im/status-desktop/pull/10343#issuecomment-1512825761
2023-04-19 11:13:01 +02:00
Patryk Osmaczko 36063f33f1 fix(chat): use proper section details data
It prevents `StatusChatInput::enabled` property to be changed when
switching sections, as a consequence the text is persisted.

fixes: #10286
2023-04-19 11:13:01 +02:00
Patryk Osmaczko ec7bd963e9 fix(chat): use loader for `ChatMessagesView` instead `ChatContentView`
fixes: #10285
2023-04-19 11:13:01 +02:00
Lukáš Tinkl e506bbfd6b fix(StatusStickerPackClickPopup): fix crash
the button to (un)install would be either greyed out or result in a crash:
- we were passing the popup a wrong store (w/o networkConnectionStore)
- the condition to `greyedOut` was inverted
2023-04-18 13:45:38 +02:00
Patryk Osmaczko e2697ae5aa feat(chat): implement jump to mention
closes: #9069
2023-04-17 18:53:42 +02:00
Michal Iskierko 7055a77a96 fix(@desktop/communities): Displaying toast messages when minting
Fix #9849
2023-04-17 15:11:35 +02:00
Noelia d5e5ba2796 fix(Mint/Airdrop tokens): Darkmode images
Updated images without background.

Closes #10299
2023-04-17 11:56:25 +02:00
Patryk Osmaczko 89efb1cd71 fix(chat): better integrate new messages marker with loading state
- new messages marker is reevaluated only if chat has unviewed messages
- loading state is reevaluated only when chat is made active, this fixes
  case described here:
https://github.com/status-im/status-desktop/pull/10151#discussion_r1158702638

fixes: #10275
2023-04-14 19:38:45 +02:00
Michał Cieślak c38e0701d5 fix(Settings): Spacing updated according to the design 2023-04-13 10:50:40 +02:00
Dario Gabriel Lipicar ed6ea5d90c feat(@desktop/wallet): add support for more NFTs media types
Fixes #9836
2023-04-11 12:40:38 -03:00