Commit Graph

718 Commits

Author SHA1 Message Date
Igor Sirotin 22ce35cf9c
feature: support url unfurling settings (#12441) 2023-10-16 17:05:55 +01:00
Alex Jbanca fcd9567677 feat: Add settings card to control link previews settings in chat input
This commit adds the link preview settings card in the chat input area and connects the settings to the controller.

Not included in this commit: Backend for the preserving the settings, syncing the settings and enforcing the settings on the backend side.

Whenever an url is detected in the chat input area, the link preview settings card is presented. This card enables the user to choose one of the following options:

1. `Show for this message` - All the link previews in the current message will be loaded without asking again. The current message can be defined as the message currently typed/pasted in the chat input. Deleting or sending the current content is resetting this setting and the link preview settings card will be presented again when a new url is detected.
2. `Always show previews` - All the link previews will be loaded automatically. The link preview settings card will not be presented again (in the current state, this settings is enabled for the lifetime of the controller. This will change once the settings are preserved and synced)
3. `Never show previews` - No link preview will be loaded. Same as the `Always show previews` option, this will be preserved for the lifetime of the controller for now.
4. Dismiss (x button) - The link preview settings card will be dismissed. It will be loaded again when a new link preview is detected

The same options can be loaded as a context menu on the link preview card.

Changes:
1. Adding `LinkPreviewSettingsCard`
2. Adding the settings context menu to `LinkPreviewSettingsCard` and `LinkPreviewMiniCard`
3. Connect settings events to the nim controller
4. Adding the controller logic for settings change
5. Adding the link preview dismiss settings flag to the preserverd properties and use it as a condition to load the settings.
6. Adding/Updating corresponding storybook pages
2023-10-12 15:40:01 +03:00
Alex Jbanca 422bb2c064 feat: Generate link previews in StatusChatInput - Small updates + Add basic zoom to Storybook InspectionWindow 2023-10-12 14:08:28 +03:00
Alex Jbanca 3ce9d66d25 feat: Generate link previews in StatusChatInput - introduce ChatInputLinksPreviewArea
This component is a wrapper for LinkPreviewMiniCard and StatusChatInputImageArea. The purpose of this component is to arrange the cards in a row layout and provide scrolling behaviour. This component also has an opacity mask that will provide a fade out appearance when the items are scrolled out of view.

+ adding storybook page
+ integrate ChatInputLinksPreviewArea in StatusChatInput
2023-10-12 14:08:28 +03:00
Jonathan Rainville 9dc5527627 fix(chat): fix chat highlighted because it was never marked as read
Fixes #11365
2023-10-04 09:24:29 -04:00
Noelia 15927b0705 feat(Community/FinaliseOwnership): Added finalise flow in the app
- Button from community column.
- Button from community overview.
- Updated storybook pages (settings overview related) according to new components requirements.

Part of #12174
2023-10-03 13:53:42 +02:00
Khushboo Mehta 1d99d8ae97 chire(@desktop/wallet): Streamline send modal folder structure
fixes #12140
2023-09-15 13:43:59 +02:00
Michał Cieślak f8347af7b7 StatusChatInput: remove unmaintained integration with ChatCommandsPopup
The functionality for sending/receiving funds directly from chat
is currently not supported, both code and designs are outdated.
This commit removes integration part but leaves ChatCommandsPopup
component for potential future use.

Closes: #12118
2023-09-11 14:37:16 +02:00
Alexandra Betouni b5d555f00b fix(chat): enabled "everyone" in group chat mentions
Closes #11029
2023-09-08 19:33:07 +03:00
Lukáš Tinkl e106be9b12 feat: Single discord channel import UI flow
Closes #12039
2023-09-07 14:52:53 +02:00
Mykhailo Prakhov 3f5df7e3ef
feat: owner and token master permissions (#11942) 2023-08-22 20:09:34 +02:00
Igor Sirotin 7e34260aef
feat: Unfurl GIFs locally (#11977) 2023-08-22 11:46:26 -04:00
Patryk Osmaczko 15701e91aa feat(communities): add check permissions pending state
closes: #11157
2023-08-08 08:58:26 +02:00
Igor Sirotin 34dba08b7a
fix: Only `scrollToMessage` when it's available in the database (#11784)
* rename `fetchMessageByMessageId` to `getMessageByMessageId`
* move reply clicking logic to `StatusMessageReply`
* make message found animation faster
* `asyncGetMessageById`
2023-08-07 23:52:04 +03:00
Igor Sirotin 129f81a01a
fix(MembersdSelectorView): fix the logic of opening CR popup (#11780) 2023-08-04 11:27:37 +03:00
Patryk Osmaczko 354bd3e923 feat(communities): implement channel-level members
closes: #11660
2023-08-03 10:58:24 +02:00
Alex Jbanca 90f4d60059 feat(ControlNode): Show toast notifications when the control node state changes
1. Fix an issue where importing a community using private key triggers the import finished event without updating the community data if the community is already imported with public key
2. Show toast messages on importCommunity and privateKeyRemoved events
3. Group community import toast messages handlers and move them from ContactsColumnView to AppMain. IMO these toast messages handlers should not be dependent on ContactsColumnView.
2023-07-28 10:03:10 +03:00
Boris Melnik 43a5d7eeeb feat(new-links): Parse url data and display
Fixes: #10852
2023-07-27 15:08:21 +03:00
Igor Sirotin 4a4e3c5663
fix: Propagate `root.linkPreviewModel` (#11673) 2023-07-26 17:09:36 +03:00
Alex Jbanca 4aaae242b5 feat(Import Control Node): Adding ImportControlNode flow
1. Create a new popup as per Design: ImportControlNodePopup
2. Add the popup in storybook
3. Integrate ImportControlNodePopup in the app
2023-07-25 15:02:45 +03:00
Igor Sirotin cc5f057b3a
Replace link previews with new unfurled data from the message (#11603) 2023-07-22 02:08:44 +03:00
Lukáš Tinkl 02e40adfca feat: New design flows to integrate Revealing addresses...
... when joining Community functionality

Closes #11138
2023-07-19 12:44:16 +02:00
Igor Sirotin d7aa0582be
Switch to new URL unfurl API [sending messages part] (#11476) 2023-07-11 14:30:55 +03:00
Igor Sirotin 80fef2179a fix: chat input preserved properties bugs 2023-06-29 11:29:52 -04:00
Noelia 0ab8a62896 feat(Communities): Communities folder reorganization
- Renamed main `CommunitiesPortal` folder to `Communities`.
- Created new `layouts` folder.
- Moved layout files from chat to communities.
- Created new `helpers` folder.
- Moved helpers files from chat to communities.
- Moved `controls/community` files from chat to communities `controls`.
- Moved `panels/communities` files from chat to communities `panels`.
- Moved `popups/community` files from chat to communities `popups`.
- Moved `views/community` files from chat to communities `views`.
- Moved `CommunityBanner` file from shared to `Communities/controls`. Only used in communities context.
- Moved `CommunitySettingsView` and `CommunityColumnView` files from chat to communities `views`.
- Moved `PermissionsStore.qml` file to `shared/stores`.
- Updated imports.
- Updated storybook.

Part of #6204
2023-06-28 14:28:47 +02:00
Lukáš Tinkl 9107f15a77 [Mint Token] Update validation rule for name property
Fixes checking for duplicate token name in a case insensitive manner

Redo the `ModelUtils.contains(model, roleName, value, mode =
Qt.CaseSensitive)` in C++; more speed and add ability to search case in/
sensitive

Some more smaller fixes/speedups

Fixes #11204
2023-06-28 11:55:11 +02:00
Jonathan Rainville 28fa8271a6 feat(communities): update communities token list on token deploy
Fixes #11125

Updates the communities asset and collectibles lists when a new token is deployed.
Also refactors the section module to remove all that code and use the communities token list instead.
Adds community ID to the token list model so that we can show only the global tokens and the tokens from the community are shown in the community
2023-06-27 09:54:23 -04:00
Lukáš Tinkl 62fec738a1 [Mint Token] Automatically switch the typed text to uppercase in symbol input
allow uppercase ASCII only input, up to 6 characters

Fixes #11201
2023-06-27 12:35:41 +02:00
Pascal Precht 04183a6271 fix: don't cause a wrong redirect when performing community admin
actions

Fixes #11146
2023-06-26 16:27:05 +02:00
Michał Cieślak 3a801955e8 chore(CommunityTokensMinting): TokenObject usage refactored
AssetObject and CollectibleObject removed to avoid distinguishing
between those two types in many places.
2023-06-26 10:01:14 +02:00
Lukáš Tinkl 620c7a746d feat(Settings/Communities): implement new communities list
Closes #11145
2023-06-23 16:48:26 +02:00
Anastasiya Semiankevich 9df6e68a77 chore(@CommunityNewTokenView.qml): add validation for decimal points input 2023-06-23 16:38:04 +03:00
Anastasiya Semiankevich b0a48f35ee chore(@CommunityNewTokenView): placeholder should differ depends on view
different placeholders for Asset and Collectibles view per figma
2023-06-23 15:09:25 +03:00
Lukáš Tinkl ae9a52397c fix: broken validation in Total finite supply field
do not try to assign `supply` value in case of error

Fixes #11122
2023-06-22 17:17:06 +02:00
Lukáš Tinkl bb7f744c57 fix: [Mint Token] Update supply validation rule text
Fixes #11190
2023-06-22 17:17:06 +02:00
Lukáš Tinkl ee8df8357a fix: Center collectible artwork field horizontally
Fixes #11187
2023-06-22 17:17:06 +02:00
Pascal Precht bea4c8c2ad fix: ensure view-and-post permissions are hidden when satisfied
This has slipped through during rebase.
We don't want to show the list of permissions to be fullfilled if they
are already satisfied
2023-06-22 12:53:39 +02:00
Noelia 1d086a9a65 fix(MintToken): 0/1 remaining label shown for a token with infinite supply
Fixes #11208
2023-06-22 12:17:34 +02:00
Noelia a671f7a9f8 fix(MintToken): Change remotely destruct text in summary view
Fixes #11199
2023-06-22 12:17:34 +02:00
Noelia 6edfa002d2 fix(Airdrop): Airdrop item not inserted correctly
- After a rebase, signal properties were modified incorrectly.

- Also added protection to not push into the stack the same state more than ones and reset holdings model each time it is set.

Fixes #11147
2023-06-22 12:17:34 +02:00
Alex Jbanca b128ed3ec1 fix: Mint tokens view - exclude watch accounts from accounts dropdown 2023-06-22 12:16:45 +03:00
Alex Jbanca 581ba8541b fix: Community permissions and tokens view horizontal scrolling 2023-06-22 10:02:59 +03:00
Pascal Precht b3329d790e feat: channel permissions
Closes: #10996, #10995, #10993, #10997, #9537
2023-06-20 21:57:37 +02:00
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