Commit Graph

204 Commits

Author SHA1 Message Date
Michal Iskierko 8f3a965a49 fix(@desktop/communities): Rename minting module
Issue #9817
2023-03-09 16:34:55 +01:00
Lukáš Tinkl 5c0f1981ad feat: Profile Showcase: Proof of concept for own Profile Dialog
- the goal of this PR is to get some bsais UI building blocks done for
the followup PRs
- the order of showcase tabs now is:
Communities/Accounts/Collectibles/Assets
- there will be further changes to accomodate for different types of
backend models as those get developed (for other users' profiles)

Fixes #9664
2023-03-08 18:45:27 +01:00
Michal Iskierko 2ac1216b68 fix(@desktop/communities): Fix community tokens model
Fix #9781
2023-03-08 13:36:41 +01:00
Michał Cieślak 0e92b69bc5 chore(CommunityPermissions): fixed warnings introduced during integration with backend 2023-03-08 12:02:55 +01:00
Michał Cieślak d813cc12b8 chore(CommunityPermissions): refactor access to stores in CP components
So far CP components (views, panels) were accessing stores directly.
Now `CommunitySettingsView` is a single place where stores are accessed.
Other components no longer depend on stores.

Moreover:
- dedicated store `PermissionsStore` created for handling permissions
  in a single, separated place
- storybook pages fixed

Closes: #9784
2023-03-08 12:02:55 +01:00
Noelia 02cf07044d feat(MintToken): Created Preview collectible page
- Added navigation between pages.
- Added main layout and properties (some backend integration still pending).
- Added holders model with mocked data.
- Added mint tokens footer component.

Closes #8734 and #8737
2023-03-07 13:24:45 +01:00
Michal Iskierko 5722f67964 fix(@desktop/communities): Handling community token image
Handle image correctly and show in testing UI.
Improve fees for deployment.
Handle CommunityTokenMetadata in community structure.
2023-03-07 10:04:12 +01:00
Michał Cieślak a2a1da801c chore(CommunityPermissions): Use key role name for referencing channels 2023-03-06 17:36:36 +01:00
Michał Cieślak 480c249ee0 chore(CommunityPermissions): Refactor channels handling
Community permissions model refers to channels by id instead of
taking/serving all details. UI fetches necessary metadata form
appropriate channels model.

Closes: #9588
2023-03-06 17:36:36 +01:00
Pascal Precht e4b8814bfa feat(Communities): allow for creating community permissions
This commit is the first of implementing community permissions.
**It is not implementing the complete feature**, rather does it
introduce the first pieces, such that we can get code reviewed and
merged before it grows too big.

To review these features, please make sure to

1. Enable wallet (Settings -> Advanced -> Wallet toggle)
2. Enable community permissions (Settings -> Advanced -> Community
   Permissions toggle)

You'll have to restart the app after doing so.

The commit introduces the following:

**UI, API calls and view models to CRUD community permissions**

After creating a community, the user can go to the community
settings and create new token permissions. The user can also update
and delete existing permissions.

**Asset and collectible view models**

To create community token permissions, users have to select
the token criteria. This commit introduces the `assetsModel` for ERC20
tokens and `collectiblesModel` for `ERC721` tokens.

The latter only supports custom minted community tokens at this point.

**This commit requires:** https://github.com/status-im/status-go/pull/3207
2023-03-03 10:22:32 +01:00
Noelia db3be56d42 feat(MintTokens): Create new collectible screen
Created new form screen for minting collectibles.

Closes #8733
2023-02-28 14:17:47 +01:00
Michal Iskierko 147288b47b feat(@desktop/community): Saving community tokens in database
Model with community tokens was moved to section_item - every section has its own model.
Every deployed smart contract is saved to database with "In Progress" state.
The app listenes to deployed transaction and updates contract state in database to "Failed" or "Deployed".
Corresponding model is updated.

Issue #9233
2023-02-27 11:01:35 +01:00
Alexandra Betouni 7c87bc8987 fix(scrollview instances): fixed dropdown&popup height
Fixes InDropdown & OutgoingContactVerificationRequestPopup
2023-02-23 20:52:29 +02:00
Michał Cieślak e352dcfc11 chore(CommunityPermission): Use typed properties for CommunitiesStore
Additionally, pass assets/collectibles models to HoldingsDropdown
directly instead of store to reduce dependency.
2023-02-23 11:51:30 +01:00
Michał Cieślak 9693e19ba5 fix(CommunityPermissions): Adjust store API to not take models as parameters, move conversion to the caller
Closes: #9611
2023-02-22 18:27:19 +01:00
Noelia 852a826126 fix(CommunityPermissions): Update initial page dark mode image
Closes #8497
2023-02-21 08:46:52 +01:00
Michał Cieślak e2811fa290 feat(CommunityPermissions): Handle update/remove by permission's key instead of index 2023-02-20 22:54:43 +01:00
Michał Cieślak 03e1636cff feat(StatusQ): Add cpp model utils to allow handling ListModel and generic QAbstractItemModel uniformly
Closes: #9562
2023-02-20 22:25:56 +01:00
Michał Cieślak c23f4e173e fix(CommunityPermissions): Typos corrected 2023-02-20 18:40:59 +01:00
Michał Cieślak d025f17e2a feat(CommunityPermissions): Check if form filled completely when
updating

Closes: #9388
2023-02-20 18:40:59 +01:00
Michał Cieślak a97c8a720e feat(CommunityPermissions): Implement duplication checking
Moreover:
- adapt flow to the design
- introduce ModelChangeTracker utility component

Closes: #9048
2023-02-20 18:40:59 +01:00
Michał Cieślak c78eaef2b6 chore(CommunityPermissions): Permissions model and backend API simplified, separation of concerns improved 2023-02-20 18:40:59 +01:00
Michał Cieślak 9757002c7d chore(CommunityPermissions): Permissions model & backend API simplified, dirty state handling simplified
Additionally, permission types metadata excluded to PermissionTypes
singleton component, PermissionsDropdown simplified by using inline
components.
2023-02-20 18:40:59 +01:00
Michał Cieślak 7388bbfef3 chore(CommunityPermissionsView): component api unified and simplified 2023-02-20 18:40:59 +01:00
Michał Cieślak fb19385438 chore(CommunityNewPermissionView): refactor to improve separation of concerns, create/save actions moved up 2023-02-20 18:40:59 +01:00
Michał Cieślak 3a3d1657f0 chore(CommunityNewPermissionView): exclude subcomponent HidePermissionPanel 2023-02-20 18:40:59 +01:00
Michał Cieślak 411c2a0aab chore(CommunityNewPermissionView): refactor save/reset changes handlers 2023-02-20 18:40:59 +01:00
Noelia c1e3050d06 feat(MintingTokens): Created welcome view
- Created minting tokens welcome view.
- Added basic navigations.

Closes #8732
2023-02-20 12:06:22 +01:00
Noelia 17fc999ca0 feat(CommunitySettings): Created base welcome settings view
- Component parametrised and renamed to `CommunityWelcomeSettingsView`. It will be the base class for some of the community settings functionalities.
- Updated `CommunityPermissionsSettingsPanel` to use the new welcome screen class.
2023-02-20 12:06:22 +01:00
Noelia fe5abb60da feat(TokensPermissionsPoupup): Created new popup
- Created new dialog.
- Created storybook page for that.
- Model properties renames.

Closes #9433
2023-02-17 11:13:51 +02:00
Michal Iskierko b6f5c558a9 feat(@desktop:communities): Minting functionality with dummy data
Add Community Tokens testing UI with minting button, enabled by a Advanced Settings toggle.
Add minting module,view and needed models.
Add community_tokens service to call collectibles smart contract functions.

Issue #8921
2023-02-13 13:42:29 +01:00
Noelia ec8b03be6e feat(JoinCommunity): Created join permission overlay panel
Created needed components to display permission requirements to join a community.

Part of #9267
2023-02-10 10:45:38 +02:00
Noelia 842c90a31e feat(Community): Create `CommunityColumnHeaderPanel` component
- `CommunityColumnHeaderPanel` created.
- Added corresponding `storybook` page.
- Modified `CommunityColumnView` to use new component `CommunityColumnHeaderPanel` instead.
2023-02-10 10:45:38 +02:00
Alexandra Betouni aa2e6386a2 fix(statusApp): resolving qml errors/warnings pt2.1
Relates to #8864
2023-02-08 18:43:51 +02:00
Michał Cieślak dc3bcd7da1 feat(Community Permissions): Integrate In section with permission creation/editing
Closes: #8855
2023-02-02 16:36:46 +01:00
Alexandra Betouni 9a2ffc0fc7 Fix(desktopapp): adding scrollview to storybook
Cleaned up binding loop warnings related to
ScrollView and added StatusScrollView in
storybook

As part of #8864
2023-01-31 18:45:51 +02:00
mprakhov 44cc6bbf83 fix(@desktop/communities): enforce alphanumerical characters in community name, description, channel name 2023-01-30 20:51:31 +02:00
Noelia a3313b563f feat(Community Permission): Add conflicts warning panel
It adds conflicts warning in `New permission` page. Mocked data.

Closes #8738
2023-01-25 17:05:27 +01:00
Alex Jbanca bf1d59c0ad perf(chatScroll): Avoid calling the backend on delegate creation/binding
Provide the needed data from the nim model directly to the delegate. This way whenever a delegate needs to display the data it doesn't need to reach the backend.

perf(chatScroll): Fix comments on Avoid calling the backend on delegate creation/binding

perf(chatScroll): Avoid calling the backend on delegate creation/binding  - add TODO comment on senderColorHash default

perf(chatScroll): merge quotedMessageAuthor details

perf(chatScroll): Fix nim tests

perf(chatScroll): Fix merge error - messages_model.nim
2023-01-19 19:24:18 +02:00
Michał Cieślak 769a41ea9c feat(CommunityPermissions): UI support to show the % of members fulfilling permission
Closes: #9044
2023-01-19 13:38:47 +01:00
Alexandra Betouni 7620061ba3 fix(CommunityEdit): content width should have fixed size
Closes #9051
2023-01-16 17:00:08 +02:00
Noelia 5e2fa14cd6 fix(Community Permissions): Update change detected buttons labels according to the new design
Exposed new properties in `SettingsDirtyToastMessage` to customise buttons texts.
Exposed new properties in `SettingsPageLayout` to customise dirty toast buttons texts.

Fixes #9046
2023-01-12 13:37:49 +01:00
Michał Cieślak fe7884cd29 feat(CommunityPermissions): InDropdown integration
Closes: #6041
2022-12-21 21:48:51 +01:00
Noelia a9d25697dd feat(CommunitySettings): Implement UI for`edit`, `duplicate` and `remove` actions in community permissions page
feat(CommunitySettings): Implement UI for`edit`, `duplicate` and `remove` actions in community permissions page

- Enabled `duplicate` action (mocked).
- Enabled `delete` action (mocked) and added / updated navigations in case all permissions are removed.
- Added delete confirmation popup.
- Enabled `edit` action (mocked) where changes are detected and the `dirty changes toast` appears properly.

Closes #8581
2022-12-19 15:25:16 +01:00
Boris Melnik f35468963c fix(warnings): Rid off warnings
Fixes: #8293
2022-12-15 19:31:18 +03:00
Michal Iskierko 3f01af4446 fix(@desktop/chat): Fix user names propagation.
Add ProfileUtils for displaying correct name.
Set names in models correctly.
Fill names in qml correctly.

Fix #8343
2022-12-14 17:44:26 +01:00
Boris Melnik 123b8e320a fix(warnings): Fix chat, community settings warnings
Fixes: #8293
2022-12-13 17:46:30 +03:00
Noelia 5d318d0304 fix(CommunitySettings): Previous page navigations are broken in community settings sections
Added property `previousPageName` into `SettingsPageLayout`.
Added needed slots in `CommunitySettingsView` to get `previousPageName` property changes and display the correct string.
Renamed `updateState` method to `navigateBack` to have a better accurate name.

Fixes #8455
2022-12-12 12:54:15 +01:00
Noelia 1db0a0077d feat(storybook): Added `CommunityPermissionsSettingsPanel`
- Added `CommunityPermissionsSettingsPanel`.

- Created panel item editor and basic panel editor layout for `CommunityPermissionsSettingsPanelPage`. Still not linked to a model.

- Added mocked data for collectibles and tokens.

- Created `ChannelsModel` mocked data.

- Added edit / duplicate / remove signals logs.
2022-12-10 14:02:02 +01:00
Noelia 1cbb3e2ad3 feat(CommunityPermissions): Created `CommunityPermissionsView` layout
- Created `CommunityPermissionsView` and integrated into the flow.
- Created `PermissionItem` component.
- Added `holdingsListModel`, `permissionsObjectModel` and `channelsListModel` flows with mocked data.
- Added `isPrivate` permission property.
- Added button header in `SettingsPageLayout`
- Added signals/methods for edit/duplicate/remove permissions
- Created new file `OperatorsUtils.qml` specific for `Operators`
2022-12-10 14:02:02 +01:00
Igor Sirotin e3bfdc0f09 fix(StatusPopupMenu): Refactoring 2022-12-02 10:30:50 +03:00
Lukáš Tinkl 9559789030 chore: reduce the number of (verification) RPC calls
- when calling `Utils.getColorHashAsJson()` we don't actually need to
issue ID verification requests at all and there might be situations when
we know beforehand that we don't need the ENS verification either
- change these helper functions' syntax and do early returns in that case
- in MessageContextMenuView, the "contact details" were duplicated, so
remove one
- remove dead code, fix some warnings
2022-12-01 16:50:23 +01:00
Jonathan Rainville b65211ac94 feat(Settings): Enable Community Archive by default and remove toggle
Closes: #6098
Original commit by @borismelnik
2022-11-30 14:41:48 -05:00
Michal Iskierko 1f2a050695 feat(@desktop/general): Use compressed community key in deep links
Issue #8001
2022-11-08 15:18:39 +01:00
Jonathan Rainville e83f46e44a test(community): add test that kicks a member
Fixes #6890
2022-10-26 14:03:21 -04:00
Jonathan Rainville 68fbaeadc1 test(community): add test that invites a user to the community 2022-10-26 12:32:52 -04:00
Jonathan Rainville afaf7717e8 fix: fix signals not passing the callback
Fixes #8038

We added a callback arg to the signals, but signals do not support default args. You need to pass the exact number of args.
2022-10-26 10:29:33 +02:00
Michał Cieślak 2e05a9784e fix(InviteFriendsToCommunityPopup): invite candidates list made scrollable
Additionally, bottom padding is fixed to avoid cutting-off the list
too early.

Closes: #7603
2022-10-25 17:03:44 +02:00
Michał Cieślak 6b90d4d5a6 chore(Storybook): add pages for InviteFriendsToCommunityPopup and related components
Closes: #8004
2022-10-25 17:03:44 +02:00
Richard Ramos 3b3b737956 feat: encrypt communities 2022-10-25 08:26:10 -04:00
MishkaRogachev 2710d02fea Fix(Communities): Fix cropped list in invite users to community popup
Close #7798
2022-10-10 13:17:12 +04:00
Igor Sirotin f32e551c75 fix(InviteFriendsToCommunityPopup): Created single global instance. Fixed profile icons. 2022-10-05 14:37:36 +03:00
Alexandra Betouni 3e3ad7fef5 fix(Community): big space in invite friends popup
Closes #7707
2022-10-04 13:38:50 +03:00
Alexandra Betouni fc3daa1451 (StatusSectionLayout): removed big space between header and content
Closes 7312
2022-09-28 15:37:52 +03:00
Lukáš Tinkl a209d39881 fix: ENS name issues
- don't display identicon rings for contacts with an ENS name
- prefer the at-form (@foo-user) whenever possible, and don't display their
  username or pubkey unless they are locally given a nickname
- show compressed keys everywhere instead of the regular ones

Fixes: #7319
Fixes: #7515
2022-09-26 22:38:02 +02:00
Lukáš Tinkl 54c73b0be7 chore: cleanup, fix warning, remove dead code 2022-09-26 22:38:02 +02:00
Michal Iskierko a0c145fbfc fix(@desktop/community): Fix member icons in invite friends panel
Fix #7364
2022-09-19 10:02:36 +02:00
Lukáš Tinkl a862c0672b fix: community banners UI fixes
- fix spacing/padding/margins
- remove MouseAreas, they block hovering the buttons (not needed any
longer thanks to our new QQC2 buttons)
- some minor cleanups

Fixes #7366
2022-09-16 11:49:42 +02:00
Lukáš Tinkl fda78a1003 fix(BackUpCommuntyBannerPanel): StatusButton port fix
the `clicked()` signal has no longer any parameter
2022-09-14 13:29:23 +02:00
Michal Iskierko b782cd1c93 fix(@desktop): Fix icons regressions
Icons in LoginView accounts list and Community members list.

Fixes #7284
2022-09-12 10:48:21 +02:00
Michal Iskierko 2bb346a09e fix(@desktop): Use colorId to find correct color of users&members
colorId is set in the model instead of using qml function.

Fix #6366
2022-09-08 13:56:27 +02:00
Alexandra Betouni e1c548696f feat(Desktop)!: Updating desktop app due to IconSettings refactor
As part of https://github.com/status-im/StatusQ/issues/781
2022-09-02 18:41:21 +03:00
PavelS 3bd6fe0fdf fix(@desktop/community): add online status to invite modal
Replace Contact component with StatusMemberListItem.
Add missing Nim functions to fill models with onlineStatus.
Adjust components paddings to match design.

Fixes #6985
2022-08-30 10:16:37 +03:00
Noelia 3d6e40fd79 feat(CommunityPermission): Added `How holds` collectibles dropdown
- Added collectibles tab component.
- Added extended dropdown base content component
- Added filter popup option.
- Added collectibles model
- Added subitems in model
- Added thumbnails mode view
- Created `CommunitiesStore` and moved mock data to there.
- Added forward subitems navigation and selection.
- Updated `statusq`.

Closes #6337
2022-08-26 18:06:58 +02:00
Pascal Precht 3509de8673 feat(AdvancedView): introduce feature flag for discord import tool
This adds a feature flag for the discord import tool so we can start
landing individual pieces of the feature without it being fully
implemented.

It also introduces the modal chooser for creating new communities but
it doesn't do anything more than that, as of this commit

Closes #6843
2022-08-26 10:18:49 +02:00
Pascal Precht e98a3b27fb refactor: move CommunityBanner to shared namespace 2022-08-26 10:18:49 +02:00
Boris Melnik 4f2db08a75 fix(StatusListItem): fix `sensor.onClicked` to `onClicked`
Closes: #7135
2022-08-25 11:55:55 +03:00
PavelS 38c77095b8 fix(@desktop/chat): adjust add members default picture
Update colorForPubkey to check if colorId is in bounds
Replace userCustomizationColors array usage with Utils function call

Fixes #6971
2022-08-23 13:07:58 +03:00
Michal Iskierko 346af7c245 feat(@desktop/chat): Add requests sections to members tab of the community management
Add tabs: "Pending requests", "Rejected"
Add getting declined requests from status-go

Issue #6279
2022-08-22 13:54:36 +02:00
Noelia 7b54bf31b4 feat(CommunitySettings / Permissions): Added `welcome` page and `How holds` tokens dropdown
- Added functionality as experimental advanced view button

feat(CommunitySettings / Permissions): Added welcome page
- Enabled new permissions tab.
- Created welcome page layout.
- Added permissions welcome image.
- Fixed top margin content in `SettingsPanelLayout` to fit designs.

Closes #6036

feat(CommunitySettings/Permissions): Created `new permission` page

- Added `new permission` page.
- Created first card layout.
- Added navigation between `welcome` and `newPermission` views.
- Improvements in base community settings layout pages.

Closes #6037

feat(CommunitySettings/Permissions): `Who holds` tokens dropdown component creation and integration

- Tokens dropdown component creation: main view, operators view and extended view.
- Logic to add new token and change operator.

Part of #6038
2022-08-16 13:42:11 +02:00
MishkaRogachev e67d649c46 feat(desktop): New invite to community popup with message 2022-08-12 11:54:51 +04:00
Jonathan Rainville 44cf440a05 test(community): add a test that edits a community
Fixes #6756
2022-08-10 16:24:26 -04:00
PavelS 1ab101c8b9 fix(@desktop/comminities) adjust Community members tab
Fixes #6786
2022-08-09 18:39:04 +03:00
Alexandra Betouni 6b63d8ee7a fix(StatusModal): back button arrow was tiny
Closes #6727
2022-08-04 13:13:50 +03:00
Michal Iskierko 92c1e9ce18 feat(@desktop/chat): Add sections to members tab of the community management
Add tabs: "All members" and "Banned"
Add unban functionality

Issue #5979
2022-08-03 09:48:09 +02:00
Alexandra Betouni cbb6cd70a8 fix(CommunityIntroMessageInput): input height was set to 0
Closes #6697
2022-08-02 17:18:39 +03:00
Alexandra Betouni 84522bd7fe fix(CommunitiesPortal): fixed status input as per design
Closes #https://github.com/status-im/status-desktop/issues/6358
2022-07-25 15:07:27 +03:00
MishkaRogachev 58e0fce819 feat(@desktop): Fix twitchy scrolling issues
Close #6187
2022-07-21 18:44:30 +03:00
MishkaRogachev 0d3aed0611 fix(@desktop): Fix scrolling twitches using ScrollView amd Flickable items
Close #5781
2022-07-21 18:44:30 +03:00
Alexandra Betouni 2bd685943f feat(chat): Removing dynamic scoping from chat section
Closes #4244
2022-07-15 17:00:36 +03:00
MishkaRogachev 6d72e19568 fix(@desktop): Refactor Backupseed modal
Close #6144
2022-07-07 14:47:12 +03:00
Patryk Osmaczko e0a5afebee chore(translations): transform `qsTrId` to `qsTr`
issue: #4544
2022-07-06 19:09:50 +02:00
Michal Iskierko 45448db90a feat(@desktop/general): Change user statuses
Handle user statuses from status-go: Always Online, Automatic, Inactive.
Handling updating own status on member list.

Issue #5886
2022-07-06 09:38:11 +02:00
Igor Sirotin c7d2157d20 fix(MyProfileView): New design 2022-07-04 21:56:04 +04:00
MishkaRogachev 3271aff7c7 fix(@desktop): Hotfix Popup's margins
This is a combination of 2 commits.

fix(@desktop): Hotfix Popup's margins

chore: bump statusq
2022-06-29 14:09:33 -04:00
MishkaRogachev a9b2459d79 fix(@desktop): Remove nested popups in create community
Close #6027
2022-06-27 13:12:52 -04:00
MishkaRogachev e30ba7e760 feat(@community): Add tags to communities
Close #5680
2022-06-24 19:44:35 +03:00
Sale Djenic 3aba152206 fix(@desktop/general): multiple ui issues fixed
- Channel is blank on first time joining - fixes: #6131
- Contacts list is empty when trying to invite/share community - fixes: #6139
- The same name is shown for all invited contacts - fixes: #6105
- The names and avatars of contacts are empty in the Contact requests - fixes: #6084
- 'Invite friends' dialog doesn't look good in the minimized app mode - fixes: #6106
2022-06-21 16:16:55 +02:00
Boris Melnik 260f10a83e feat(CommunityOverview): Add Community Overview banners
Closes: #5978
2022-06-14 14:31:39 -04:00
Patryk Osmaczko 4a4cee7da7 chore(commonuty/popups): remove needless CommunityProfilePopup features
CommunityProfilePopup is deprecated and will be removed. Members
list and notifications are already covered by new community settings.
2022-06-12 15:45:49 +02:00