Commit Graph

213 Commits

Author SHA1 Message Date
Lukáš Tinkl 6891c36cb6 fix: disable importing channel from discord
when another import is already in progress

Fixes #12239
2023-10-16 15:40:24 +02:00
Michal Iskierko 4bd3d672c6 fix(@desktop/communities): Fix enabling/disabling mint button
Fix #12370
2023-10-15 21:33:24 +02:00
Noelia fd1e6ac657 fix(JoinCommunity): Unable to join community
Fixes #12351
2023-10-10 15:22:57 +02:00
Mikhail Rogachev cd4d92aef0
Feat/issue 11795 introduce KickedPending and BannedPending states (#12068)
* feat(Communities): Introduce pending states for kick, ban and unban actions

Close #11795

* feat(Communities): Show bannedMembers pending states on the UI

* feat(Communities:) make kick, ban and unban methods async

* feat(Communities): add signal about community membership status change

* fix(Communities): move membership managment to to the appropriate model

* chore: review fixes
2023-10-05 00:41:51 +03:00
Michal Iskierko 5981e946fd feat(@desktop/communities): Adjust owner and master tokens deployment flow to new API
Issue #11954
2023-10-04 12:08:50 +02: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
Noelia 862d4f3add feat(Community/FinaliseOwnership): Created needed finalise popups
- Created finalise popup and added it into storybook.
- Decline popup created and added support in storybook.

Part of #12174
2023-10-03 13:53:42 +02:00
Lukáš Tinkl ac1adcea32 fix(sharding): use StatusTextArea for multiline readonly text 2023-10-02 15:04:17 +02:00
Lukáš Tinkl cee0351ca0 feat: add ManageShardingPopup
which can disable or launch editting of the shard index for a given
community

- integrate it into community settings
- add a dedicated storybook page and make it also available from
EditSettingsPanelPage

Needed for https://github.com/status-im/status-desktop/issues/12197
2023-10-02 15:04:17 +02:00
Lukáš Tinkl f70609119c feat: add EnableShardingPopup
which can configure and enable the shard index for a given community

- integrate it into community settings
- add a dedicated storybook page and make it also available from
EditSettingsPanelPage

Needed for https://github.com/status-im/status-desktop/issues/12197
2023-10-02 15:04:17 +02:00
Lukáš Tinkl f3a5a61771 feat: add "sharding" section to Community Settings
Needed for https://github.com/status-im/status-desktop/issues/12197
2023-10-02 15:04:17 +02:00
Khushboo Mehta d19e95cb5b chore(@desktop/wallet): SendModal: complete storybook flow
closes #12244
2023-10-02 12:27:15 +02:00
Noelia 89a559745b feat(Wallet/Collectibles): Added special format for owner and tmaster community tokens
- Updated `CollectibleDetailsView` to show owner and tMaster token collectible types with the correct design.

- Updated `CollectiblesView` to show owner and tMaster token collectible types with the correct design.

- Modified send footer option if collectible selected is an owner token.

- Added logic to wallet rootstore to handle selected collectible data.

- Reverted changes on property selectAccount in sendModal

Closes #12172
2023-09-26 12:44:15 +02:00
Lukáš Tinkl b4958689bd fix: fixup left margin in settings to be 64px
as intended in Figma; also fix the icon size to be 24px
2023-09-25 14:09:45 +02:00
Noelia 57cfc425fc feat(TransferOwnershipAlertPopup): Add information popups when owner token is not created yet
It opens information popups when community owner token is still not created:

- From Overview / Transfer ownership button
- From Overview / How to move control node button
- Added support into storybook

Closes #12173
2023-09-22 13:50:41 +02:00
Michał Cieślak 82a5147bb5 feat(CommunitySettingsView): Integrate Kick/Ban/Destruct popups for TokenMaster
Closes: #12066
2023-09-22 11:46:51 +02:00
Michał Cieślak ec5bed6261 fix(TokenMasterActionPopup): display elided wallet address when contact name not available 2023-09-22 11:46:51 +02:00
Michał Cieślak fab3dcee60 chore(Communities): rename SignMultiTokenTransactionsPopup to SignTransactionsPopup
Closes: #12225
2023-09-22 10:43:05 +02:00
Michał Cieślak 7dcb577c8b chore(CommunitySettings): Remove outdated and unused SignTokenTransactionsPopup 2023-09-22 10:43:05 +02:00
Michał Cieślak 1825658f01 feat(MintTokensSettingsPanel): replace outdated sign popup with new one for burn and destruct 2023-09-22 10:43:05 +02:00
Michał Cieślak fb48e7be0b feat: Refactor AmountToSend to use exact amounts for transactions
Closes: #12168
2023-09-20 15:15:29 +02:00
Noelia 717c243e02 feat(TransferOwnershipPopup): Updated transfer ownership popup according to new design
- Applied new design to transfer ownership popup.
- Added support in storybook.
- Added navigation to transfer ownership popup from community settings / owner token footer.
- Added navigation to transfer ownership popup from community settings / overview.
- Linked wallet send modal to the transactions popup with the needed pre-populated data.

Closes #12171
2023-09-20 11:08:29 +02:00
Noelia 4d22d8d56f feat(CommunityOwnership): Removed old flow
Removed old transfer ownership flows.
2023-09-20 11:08:29 +02:00
Lukáš Tinkl 20182b0d75 fix(shared addresses) wallet address selection broken
compare the addresses to share in a case insensitive manner

Fixes #12152
2023-09-18 18:50:18 +02:00
Patryk Osmaczko 720f6884b8 feat(communities): integrate token permissions pending state
closes: #11852
2023-09-18 15:29:03 +02:00
Lukáš Tinkl 848d3b14f5 feat(community ownership) Move community control node flow UI
Implement the UI part of the new flow for moving community control nodes
w/o involving private keys

Closes #12088
2023-09-18 11:00:46 +02:00
Khushboo Mehta 1d99d8ae97 chire(@desktop/wallet): Streamline send modal folder structure
fixes #12140
2023-09-15 13:43:59 +02:00
Lukáš Tinkl a75890d7be fix(Communities): fixed channel color picker dialog
Closes #9696
2023-09-15 10:27:56 +02:00
Noelia 0a930fc9b1 fix(MintTokens): Network chosen locks in the network used for all future tokens minted for that community
- Mint Owner token / TokenMaster token form: Changed text description for network field.
- Mint asset / collectible: Lock network. It should be the same network than the owner token one.
-  Mint asset / collectible: Additional simplification / clean-up of description field.
- Added network model helper file.

Fixes #11989
2023-09-14 16:19:09 +02:00
Vladimir Druzhinin 29665956f1
Test(Community) Object names added (#12127) 2023-09-12 10:55:40 +02:00
Noelia 93a69893d9 fix(Permissions): Tweak to Owner and TokenMaster permissions wording
Fixes #12004
2023-09-12 10:18:18 +02:00
Alexandra Betouni ed065a94f9 fix(URLUnfurling): Updated image context menu
Also moved copyToClipboard function in Utils
and updated Chat section to use it from there

Closes #11941
2023-09-12 00:04:08 +03:00
Alex Jbanca 624b758c85 fix(Update fees periodically): Implementing periodic fee update for airdrops, minting, self destruct and burning transactions 2023-09-08 23:25:04 +03:00
Alex Jbanca f9e7265447 fix(Update fees periodically): Update airdrop flows to use fees subscriber 2023-09-08 23:25:04 +03:00
Noelia b3c74de234 fix(Airdrop): Update owner and tmaster tokens visualization in airdrop's list
Added filter in collectibles airdrop's list:
- TMaster token will be shown ONLY if user is the community owner.
- Owner token is always hidden.

Fixes #12089
2023-09-08 10:40:10 +02:00
Lukáš Tinkl e106be9b12 feat: Single discord channel import UI flow
Closes #12039
2023-09-07 14:52:53 +02:00
Jonathan Rainville bc4a150afa feat(shared_addresses): get old shared addresses for the edit popup
Fixes #11973
2023-09-01 09:31:40 -04:00
Michał Cieślak 0d2f11912c feat(Communities): Integrate kick/ban actions with token holders list
Closes: #11033
2023-09-01 14:11:31 +02:00
Valentina1133 d684acd835
test(Communities) Adding permission test automated (#11993) 2023-08-31 12:31:43 +07:00
Michał Cieślak 1bc7eb374b fix(BurnTokensPopup): Handle non-integer values for assets
Closes: #11864
2023-08-31 00:37:23 +02:00
Jonathan Rainville 789a01cf09 feat(shared-addresses): add loading state for checking permissions
Fixes #11893
2023-08-30 10:48:12 -04:00
Lukáš Tinkl a42ac076ca fix(shared-addresses): wrong account color and type
- rename `watchOnlyAccounts` to `nonWatchAccounts` to reflect what the
property returns
- some warning fixes

Fixes #12023
2023-08-30 10:30:50 +02:00
Michal Iskierko da30b8d2d8 fix(@desktop/communities): Pass addressFrom from UI to contract calls.
Use address set in UI instead of deployer.

Fix #11827
2023-08-25 15:48:51 +02:00
Alex Jbanca 5fb057f61f feat(MembersTab): Update pending states based on new design
Adding the pending state indicator as a separate item in the members tab listView.
Removing the pending indicator from Buttons.
2023-08-22 21:55:52 +03:00
Mykhailo Prakhov 3f5df7e3ef
feat: owner and token master permissions (#11942) 2023-08-22 20:09:34 +02:00
Mikhail Rogachev cc83098263
feat(Communities): Improvements for token holders list (#11923)
* feat(Communities): Refactor token holder list item to separate file

Close #11858

* feat(Communities): Use contact details for community member info

* feat(Communities): reuse StatusMemberListItem for member token holder

* Review fixes

Co-authored-by: Michał Iskierko <61889657+endulab@users.noreply.github.com>

---------

Co-authored-by: Michał Iskierko <61889657+endulab@users.noreply.github.com>
2023-08-22 18:34:37 +03:00
Jonathan Rainville 8332a685c4
Hook pending join request backend to new UI (#11914)
Fixes  #11851
2023-08-21 15:07:40 -04:00
Boris Melnik 95f829665b
feat(communities): Update permissions list for spectated community tokens model (#11803)
Fixes: #11480

* hook up join popup to permission model

* fix chats not being put in the permission model

* make it work with channel permissions as well

---------

Co-authored-by: Jonathan Rainville <rainville.jonathan@gmail.com>
2023-08-21 14:54:57 -04:00
Michał Cieślak 79a195b7c9 fix(Utils): Sanitize string representing amounts in FeeRow
Closes: #11929
2023-08-18 17:07:20 +02:00
Michał Cieślak 02d16cb22f fix(Airdrop): Use remaining supply to display and validate amounts
Closes: #11917
2023-08-18 15:53:13 +02:00
Alex Jbanca 33b8ca84e8 feat: Disable community membership request actions when the request is in action pending state
The actions are disabled by default. The proper visibility can be set when the backend implementation is done.

+ Fix one issue where the button tooltip was triggered when the pending state button is not visible
2023-08-17 21:14:43 +03:00
Michał Cieślak 81cc2070e9 fix(Communities): Remotely destruct popup for regular collectibles integrated
Closes: #11924
2023-08-17 17:26:30 +02:00
Michal Iskierko d031072514 fix(@desktop/communities): Restart fee timer only when the dialog is opened
Fix #11921
2023-08-17 14:11:11 +02:00
Lukáš Tinkl 5b2a7b9264 fix: the member search is adding empty spaces on the search results
Also fix other smaller issues found in this panel:
- display correct user name (not just `model.displayName`)
- do not display tooltips for invisible buttons
- vertically center the action buttons
- use `SearchBox` for consistency

Fixes #11848
2023-08-17 14:05:40 +02:00
Michał Cieślak 1c50ec17a8 chore(Communities): Refactor amounts handling for displaying, minting, airdropping and burning
Closes: #11491
2023-08-17 11:26:25 +02:00
Mikhail Rogachev f4b028bd71
feat(CommunityTokens): Display community member contact data for token holders list (#11787)
* feat(CommunityTokens): proposal of CommunityCollectibleOwner

Close #11143

* feat(Communities): implement viewProfile from token holders list

* fix: re-request community token owners after a contact get removed from a community
2023-08-17 11:24:14 +04:00
Michal Iskierko a7b5ab30a0 fix(@desktop/communities): Set up isTokenMasterOwner flag correctly in UI
Fix #11276
2023-08-16 12:11:12 +02:00
Michał Cieślak 197c211fbc fix(EditOwnerTokenView): Fee errors handling fixed
Closes: #11823
2023-08-16 10:20:48 +02:00
Michal Iskierko 0c78a648b5 fix(#desktop/communities): Remove temp minting and temp airdrop buttons
Improve logs in community tokens service.

Issue #11250
2023-08-14 21:40:57 +02:00
Noelia 6b8ef1411b refactor(OwnerToken): Refactored UI roles `isPrivilegedToken` and `isOwner`
Refactored UI expecting backend role: `privilegesLevel`.
Added privileges level possibilities into `Constants`.
Updated storybook accordingly.
2023-08-14 21:40:57 +02:00
Michal Iskierko 603d4dd4d8 feat(@desktop/communities): Deploy Owner and Master tokens flow.
Issue #11250
2023-08-14 21:40:57 +02:00
Alexandra Betouni 3ce0215c88 feat(RemotelyDestructPopup): Added fee box
Closes #11624
2023-08-11 19:22:02 +03:00
Alex Jbanca 7d4df690c5 feat: Add Ban/Kick Pending state in the Community members settings. 2023-08-11 17:55:51 +03:00
Alexandra Betouni 0676f49f4c feat(BackUpSeedModal) added enter key press handling
Closes #8309
2023-08-11 16:53:24 +03:00
Alexandra Betouni e6f9bfdcdd feat(RemotelyDestructPopup): Added fee box
Closes #11624
2023-08-11 16:53:24 +03:00
Alex Jbanca 7de4c2c5b1 fix(Permissions): Disable amount input for unique tokens
Changes in the Permissions design:
1. If the collectible is unique the amount input is disabled. 1 is auto-selected
2. Show `Max. 1` for unique tokens and empty string for other tokens

Changes in the Airdrop design:
1. Show `Max. 1` for unique tokens
2023-08-11 16:50:55 +03:00
Lukáš Tinkl 22258cc363 token-permissions: implement the UI "edit" flow for shared addresses
Fixes #11599
2023-08-11 15:38:42 +02:00
Noelia f721636452 refactor(CommunitySettings): Add SFPM for wallet accounts model in a single place
- It adds proxy of wallet accounts only in a single place (wallet root store) and pass the tuned model through the rest of views.

- It updates `storybook` accordingly.

Closes #11829
2023-08-11 13:02:29 +02:00
Jonathan Rainville 24d26cc038 feat(airdrop): get revealed accounts using new API instead of desc
Fixes #11817

Instead of getting revealed accounts from the community description (it's no longer available), uses the new `getRevealedAccountsForAllMembers` API. Uses it async so that we do not slow the start process. The model is updated correctly when we finish loading them.
2023-08-10 11:59:09 -04:00
Alex Jbanca 7d0d321b35 feat(community): Add Pending states to community membership request decisions in members tab panel 2023-08-10 18:02:27 +03:00
Noelia 351309a2c6 feat(Permissions): Adding, duplicating, editing and deleting permissions when control node is offline
- It adds info panel when control node is offline.
- It modifies UI texts when control node is offline.
- It updates storybook updating permissions model and allowing permission state changes.

NOTE: Only UI, no backend. There is 1 expected integration point: permissions model item `permissionState` role.

Closes #11769
2023-08-10 16:52:47 +02:00
Alexandra Betouni a1e1e316db fix(TokenHoldersPanel): Added sorting feature
Closes #11032
2023-08-08 17:32:49 +03:00
Noelia d136d9bb67 feat(BurnToken): Add fee box with network selector to Burn popup
- It adds fee box into the Burn popup component.
- It updates storybook accordingly.

Closes #11609
2023-08-08 14:37:56 +02:00
Patryk Osmaczko 15701e91aa feat(communities): add check permissions pending state
closes: #11157
2023-08-08 08:58:26 +02:00
Alexandra Betouni a36f0d8ce8 feat(Communities): changes in import popup for private keys
Closes #11245
2023-08-07 15:26:35 +03:00
Alex Jbanca 9be2a8d799 feat(Community Overview): Trigger chart data updates on specific actions + optimise the backend calls
This commit includes the following changes:
1. Request from backend the messages count in a specific interval as opposed to all messages timestamps in that interval.
2. Update the chart end date before refreshing the data
3. Fix metrics type parsing in community service
4. Fix a bug where the new incoming data was not processed by ChartJs without a hover event on the chart. The fix here is to manually request paint() on model changes.d

Issues found and not handled here:
1. On large communities the backend request can take 3 minutes to complete
2. CPU usage can easily go to 100% when switching chart tabs on large communities. All the requests are processed by the backend.
2023-08-07 11:12:21 +03:00
Noelia ecf5efb94e fix(Minttoken): Account selector is no longer present under fees section
It seems that for `macOS`, `ParentChange` trigger was not correctly set if using specific `when` condition on desktop app (working properly on storybook). Setting it always to `true`, it does the trick and reparents footer component as expected.

Fixes #11742
2023-08-04 16:48:20 +02:00
Michał Cieślak edae7bf818 feat(Communities): Add animation in token holders list when remotely destuct completed
Closes: #11775
2023-08-04 09:41:43 +02:00
Michał Cieślak b4891a65b5 feat(Communities): Present remotely destruct in progress in token holders list
- some adjustments to updated design
- figma links added
2023-08-04 09:41:43 +02:00
Michał Cieślak a793865835 feat(Communities): Add TokenMasterActionPopup to MintTokensSettingsPanel
Closes: #11622
2023-08-03 16:26:34 +02:00
Michał Cieślak 383cd6dcf7 feat(Communities): TokenMasterActionPopup added for Remote destruct, Kick and Ban actions 2023-08-03 16:26:34 +02:00
Michal Iskierko 780a6b6c68 feat(@desktop/communities): Expose remote destruct state to UI.
Issue #11182
2023-08-03 12:18:55 +02:00
Mikhail Rogachev edba946a71
feat(Community): Community messaging statistics chart (#11696)
* feat(Community): Community messaging statistics chart

Close 11152

- Use se `collectCommunityMessageMetrics` for messaging statistics chart
in community overview

* feat(Community): Transfer community metrics with dto objects

* feat: impl simple string-based model for community metrics

* fix(Community): Review fixes and fix for changing community when chat is open

* Update src/app/modules/main/chat_section/controller.nim

Co-authored-by: Jonathan Rainville <rainville.jonathan@gmail.com>

---------

Co-authored-by: Jonathan Rainville <rainville.jonathan@gmail.com>
2023-08-02 20:03:52 +04:00
Jonathan Rainville dd346319ff feat(communities): add spectatedCommunityPermissionModel to communities
Fixes #11746
2023-08-02 11:00:46 -04:00
Noelia 33c9771d3b fix(Mint): No redirect to Tokens screen when minting a token
Fixes #11731
2023-08-02 15:55:36 +02:00
Noelia 939dc03728 feat(OwnerToken): Add `Retry` button
- In case of `Owner` and `TMaster` token deployment failed, a `Retry` button must be shown in minted tokens pages and it will navigate to the `Edit page` the same way it's done by using `Retry` button inside the item selected.
- Updated storybook accordingly.

Closes #11613
2023-08-02 11:56:48 +02:00
Lukáš Tinkl 3d2deb5335 fix: Revisit character set usage (ASCII/Latin1/UTF-8) in description fields
Restrict the character set to basically 7-bit ASCII plus some punctuation
in community/chat/profile related popups in order to:
- reduce the risk of impersonation (UTF-8 characters might look the same
despite being a different codepoint)
- narrow down the set of characters in order to keep the new share URL
format short

Closes #11307
2023-08-02 09:52:48 +02:00
Noelia d832a306a4 fix(Minting): After minting completed 1 airdrop button is enabled and the other disabled
- Added `buttonEnabled` property to `StatusInfoBoxPanel` so it can be set from outside.
- Fixed airdrop button enable condition in minting flow. It is enabled when minting state is completed and if the token properties are infinite supply or there are still remaining tokens to be airdropped.
- Updated storybook accordingly.

Fixes #11496
2023-08-01 13:20:31 +02:00
Khushboo Mehta 6c5c36584a feat(@desktop/wallet): Account view - Prefered network
fixes #11578
2023-08-01 09:51:33 +02:00
Jonathan Rainville 515028222e feat(airdrop): make the airdrop member selector use the airdropAddress
Fixes #11532

Hooks the Airdrop views to the new airdropAddress model property so that the fee calculation and the airdrop transaction can use a valid address.
2023-07-31 11:34:10 -04:00
Jonathan Rainville 6e346d2c0d feat(Communities): changes in import popup for public keys
Also: refactor(communities), moved request to join funcs to communities module
This is needed because we can now request to join from the Import popup

Closes #11242
2023-07-28 18:53:59 +03:00
Lukáš Tinkl bb2bbfb5b6 fix: Review scrolling behavior for holdings dropdown
- remove padding and use margins so that the listview can span the whole
width while having the scrollbar neatly next to it
- make the section header both inline and floatable (which makes it
always visible, even when scrolled away)
- fix the special search results "section" to behave the same way
- sort the results by category and name
- expose the `allTokensMode` for easy testing with storybook

Closes #10201
2023-07-28 17:46:29 +02:00
Michał Cieślak 190a3b775e feat(Communities): Add fee box and updated sign popup to standard minting flow
Closes: #11303
2023-07-28 12:49:14 +02:00
Michał Cieślak f4d66a244e feat(Communities): Add fee box and updated sign popup to owner/token master tokens minting 2023-07-28 12:49:14 +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
Pascal Precht 5351f2b694 feat: implement retrying deploying community contracts
Ultimately, this means deleting/removing the entry of the previously
failed deployment, then performing a new transaction.

Closes #11186
2023-07-27 09:32:03 +02:00
Michał Cieślak ed13b61c3a chore(Community Airdrop): Update fees box according to the desing
Now it allows to select account for paying fees.

Closes #11605
2023-07-26 17:59:45 +02:00
Michał Cieślak 3c65d2e69e chore(Communities): Fees box - use danger outline for account selector when error 2023-07-26 17:59:45 +02:00
Michał Cieślak 8524e37844 chore(Communities): Fees box - add showAccountsSelector flag
It allows to show/hide selector without losing it's state.
2023-07-26 17:59:45 +02:00
Michał Cieślak 7f27695f12 chore(Communities): Align fees box sizing to updated design 2023-07-26 17:59:45 +02:00