Commit Graph

2247 Commits

Author SHA1 Message Date
Jonathan Rainville caebc9b93f fix(community-members): fix pending request buttons + updates
Fixes #9973

The buttons didn't work because we weren't using the right model + the section model didn't expose the PendingMemberRequestsModel.
I also fixed the service to update the community correctly and send the event. It should feel snappy-er to approve someone now.
2023-03-27 11:17:34 -04:00
Michal Iskierko d759bda81d fix(@desktop/communities): Computing fees in ETH and USD for Sign Transaction dialog
Issue #10007
2023-03-27 16:25:49 +02:00
Pascal Precht 81d4ea05e9 fix(communities): only require auth for token gated communities
There's a bug that all requests to join a community require the user to
authenticate themselves. This should only be needed for community that
are token permissioned.

This commit fixes it by only performing auth when requesting from the
tokengated community view.

Fixes #10010
2023-03-24 15:22:47 -04:00
Jonathan Rainville 27d7b822e3 fix(group): fix editing group image on Windows
Fixes #9884
2023-03-24 14:51:37 -04:00
Jonathan Rainville 9d0e14b680 refactor(chats): separate calls to getChats for each section
Fixes #9858
2023-03-24 13:05:19 -04:00
Khushboo Mehta 5b3a115f55 fix(@desktop/wallet): Loading screen after adding account
1. Removing logic for loading to nim
2. Handling error state for asset view also on the nim side

fixes #9648
2023-03-24 17:09:09 +01:00
Boris Melnik 30b4d9eb5c fix(chat): Sent images with text correctly
Fixes: #9564 #6374
2023-03-24 14:33:17 +03:00
Igor Sirotin e4f6724fdd
fix(Syncing): Update to newer version of status-go local pairing (#9992) 2023-03-24 11:07:30 +11:00
Igor Sirotin 06ca722cb7
fix(Syncing): Added back state for sync_device_result state (#9998) 2023-03-24 10:25:33 +11:00
Boris Melnik 5592335b2f fix(chat_section): Open Chat section before creating or switching to one-to-one chat
Fixes: #9880
2023-03-23 22:13:27 +03:00
Jonathan Rainville 2f3f8f4e03 refactor(gifs): lazy load tenor api key + make search async
Fixes #9949

Only calls `setTenorAPIKey` once we need it (when doing a search or getting trending). 
Also caches the trending gifs so that they are only fetched once.
Makes the search and trending calls async by create an async tenor query async task.
2023-03-23 13:20:07 -04:00
mprakhov 21d2c00b40 feat(@desktop/chats): Keep only last 5 chats/channels in the memory 2023-03-23 17:41:24 +01:00
Khushboo Mehta 072537f61a feat(@desktop/wallet): Implement connection error screens
fixes #9835
2023-03-23 15:26:22 +01:00
Khushboo Mehta df121445ca fix(@deaktop/wallet): Implement error states with automatic retries
fixes #9688
2023-03-23 15:26:22 +01:00
Pascal Precht 054ad18532 feat: add authentication modal to join commmunity view
Users that request access to community that are token permissioned
need to authenticate and enter their password, so they can reveal
their wallet addresses
2023-03-23 14:28:31 +01:00
Pascal Precht 5e965bcbb7 refactor: make accepting member requests to join async
This is necessary because with community token permissions, when owners
manually accept a request, we a) don't want to block the UI when the
users funds are check on chain and b) in case of insufficient funds,
we'll react with a modal that tells the owner that the user can't be
accepted.

All of that is done in this commit.
2023-03-23 14:11:04 +01:00
Pascal Precht 858b53979a fix(tokenService): ensure token address map is properly initialized
Nim didn't complain, but the data was being "swallowed" resulting in
a broken asset list in the permissions view.
2023-03-23 08:35:20 +01:00
Igor Sirotin 2d22f2f09a
fix(Syncing): Fixed changing device name (#9921) 2023-03-23 10:21:44 +11:00
Lukáš Tinkl 3b2a8f4253 fix: Status taskbar button and the Status window title bar are missing
... the Status icon in OS Windows 10 (new regression in 0.10)

fix a fatal typo when refactoring to use `main_constants.IS_MACOS` :)

Fixes #9791
2023-03-22 23:37:38 +01:00
Anthony Laibe 9af1734c6a fix(@wallet): inifinite load tx
fixes #9960
2023-03-22 20:45:20 +01:00
Jonathan Rainville 964aa7ebc9 refactor(community): make community data calls async
Fixes #9825
2023-03-22 15:13:19 -04:00
Jonathan Rainville 3008e56455 fix(chat_section): fix link activation for channels inside categories
Fixes #9974
2023-03-22 13:26:20 -04:00
mprakhov 417f206d4d fix(@desktop/communities): remove chat_section data if user left the community 2023-03-22 17:31:16 +01:00
Michal Iskierko 50f64919be fix(@desktop/community): Convert community token image to base64 format
Fix #9866
2023-03-22 15:08:02 +01:00
Alex Jbanca 4ccdcdf44e chore: Add Apple silicon support 2023-03-22 15:20:07 +02:00
Ivan Belyakov 02ebc8744c feat(@desktop/wallet): remove isWalletEnabled from local settings and
use ENABLE_WALLET env instead
2023-03-22 10:39:59 +03:00
Ivan Belyakov ee3d92c12b feat(@desktop/wallet): enable wallet by default 2023-03-22 10:39:59 +03:00
mprakhov 8d955265dc fix(@desktop/sections): do not unload chat and communities sections during the switching between the sections 2023-03-21 16:44:40 +01:00
Pascal Precht 8ef495c604 feat: add `decimals` to token criteria
We need to store the `decimals` of a given critera so they can be used
by the backend for calculation
2023-03-21 15:55:09 +01:00
Jonathan Rainville 2d2929872e refactor: add parsedText to message_item to parse msg on mention change 2023-03-21 10:09:51 -04:00
Jonathan Rainville 0ebc81594a refactor: reduce calls to getMessageById and remove calls for reactions
Fixes #9859

getMessageById was called way too often, because each time a contact was updated, we called it on every message that contained a mention. Now we only call it on messages that contain a mention from that specific user.

Also, we called emojiReactionsByChatIDMessageID as part of that service call, but only the pinned message used it, so I removed it from the service function. This means that the pinned messages will no longer have the emoji reactions. I could add them back if we really want, but IMO, it's not really necessary. You can just click on the message and see it in the chat instead.

I removed the call to `getMessageById` in the activity center as well, since we can get the replied message info from the MessageDto directly now.

I also removed some dead code in the messages module.
2023-03-21 10:09:51 -04:00
Pascal Precht cc1a89efef fix(JoinCommunityView): update amIMember state when kicked and joined
Also add handlers to JoinCommunityView for requesting and cancelling
requests. These will be extended in follow up commits to included
authentication modals
2023-03-21 12:16:53 +01:00
Igor Sirotin 0689a8f386
fix(Syncing): Fixed synced devices list UI bugs (#9929)
* Added online badge to device delegates
* Fixing device last timestamp processing
* Synced devices sorting - current device is always first
* Devices list scrolling fixes
* Fix device list duplication
* Hide online badge for "Synced device" subtitle
2023-03-21 16:10:06 +11:00
Dario Gabriel Lipicar 842e4565bd feat(@desktop/wallet): add support for collectible "watched contracts". Re-fetch collectibles periodically.
Fixes #9856
2023-03-20 12:42:32 -03:00
Boris Melnik 0b6ff5ae2f fix(activity_center): Remove notifications from activity center
Fixes: #9751
2023-03-16 22:26:32 +03:00
Lukáš Tinkl 1998a6556a feat(Profile): New Social Links workflow
TLDR;
- all links visible in settings/popup
- persistent order of items
- drag'n'drop to reorder
- editing/deleting in a new popup
- several links of the same type

Needs changes in nimqml (to expose QAIM::begin/endMoveRows), in
DOtherSide (to expose those to NIM), in status-go (to preserve the links
order and fully save them to DB)

Fixes #9777
2023-03-16 16:08:23 +01:00
Boris Melnik 3a737f97a7 fix(messaging): Sync with status-go content type enum
Fixes: #9655
2023-03-16 16:42:02 +03:00
Michal Iskierko 1c53d1e9b9 fix(@desktop/communities): Chain details (name, icon) are taken from model.
Introduce TokenItem struct.
TokenModel keeps TokenItems.
TokenItem keeps CommunityTokenDto and chain details.
Chain details are taken from networks service.

Fix #9867
2023-03-16 11:46:39 +01:00
Jonathan Rainville 55ad5409f7 refactor(community-service): merge curatedCommunities in communities
Fixes #9752
2023-03-15 13:44:45 -04:00
Igor Sirotin 33d38a4081 fix: Device syncing
- Added local pairing signals
- Remove slash ending from keystorePath
- Implemented localPairingState. Fixed sync new device workflow. 
- Error message view design update 
- Moved local pairing status to devices service
- ConnectionString automatic validation
- Async inputConnectionString
- Added all installation properties to model. Minor renaming.
- Removed emoji and color customization
- Show display name, colorhash and color in device being synced
- Add timeout to pairing server
- Add device type
Fix `DeviceSyncingView` sizing. Fix `inputConnectionString` async task slot.
2023-03-16 00:27:21 +13:00
Jonathan Rainville 1f3aef3a0b refactor(browser): make dapp permissions lazy load
Fixes #9826
2023-03-14 16:19:45 -04:00
Stefan 7cbe7332b8 feat(wallet) fetch multi-transaction information
Prepare the business logic for the upcoming multi-transaction UX
changes.

Bump the status-go HEAD with the corresponding changes

Updates #7663
2023-03-14 21:26:58 +04:00
Dario Gabriel Lipicar 30294f97fe feat(@desktop/wallet): add pagination to collectibles view
Fixes #9754
2023-03-10 12:02:59 -03:00
Pascal Precht 25b0641cc2 feat: introduce first JoinCommunityView for token-gated communities
This does a few things:

- It integrates with the latest `CommunityTokensMetadata` to access
  community specific ERC721 token
- It changes `ChatLayout` such that it conditionally loads either
  `ChatView` or `JoinCommunityView`. `JoinCommunityView` has been
  specifically designed for token-gated communities

Here's what works (in terms of token permissions):

1. If a community has token permissions and the the current users is not
   a member of that community, we show `JoinCommunityView` instead of
   `ChatView`
2. Any community token permissions of type "Become member" are listed in
   the `JoinCommunityView`
3. There are different types of token critera a permission can have:
   ERC20 token, ERC721 token, or ENS (which is also ERC721 but we have
   a type for that nonetheless)

   Only ERC20 token balances are checked for the known wallet accounts.
   This happens every time the known token list has been updated (every
   10 min atm).

   We still need to add balance checks for any ERC721 tokens and ENS.
4. If token permissions are created, updated or deleted by the community
   owner, the `JoinCommunityView` will update in real-time.

You'll also notice that the `Reveal my address and request access`
button will be enabled if any of the token permissions are fulfilled
(only ERC20 at the time being). Clicking that button will not yet send
a request.

This will be done in the next step as part of https://github.com/status-im/status-desktop/issues/9761
2023-03-09 16:35:06 +01:00
Michal Iskierko 8f3a965a49 fix(@desktop/communities): Rename minting module
Issue #9817
2023-03-09 16:34:55 +01:00
Michał Cieślak ab523ee19f fix(CommunityPermissions): Temporary solution for assets icons
Closes: #9613
2023-03-09 14:16:36 +01:00
Alex Jbanca a7943e79af core: Add benchmarking tools 2023-03-09 09:20:34 +02:00
Jonathan Rainville d8473f4d4f refactor(communities): refactor communities cache in service
Fixes #9570
2023-03-08 15:18:08 -05:00
Pascal Precht ce33c195cc refactor: make loading installed sticker packs asynchronous
This is a continuation of the effort to improve out app's startup time.
With these changes, installed stickers are only loaded when the sticker
popup is opened.

They are also loaded asynchronously to not block the main thread.

Closes #9435
2023-03-08 13:03:52 -05:00
Pascal Precht 433ea71d62 refactor: load recent stickers asynchronously
This postpones the loading of recently used stickers to the point
when a) the stickers popup is opened and the recent stickers tab was the
last visited one or b) when the sticker popup is open and one switches
to the recent stickers tab.

Partially closes #9435
2023-03-08 13:03:52 -05:00