2746 Commits

Author SHA1 Message Date
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
Pascal Precht
919f3dc6f7 refactor: load gifs asynchronously
Instead of loading recent gifs right on startup eagerly,
we postpone the task to when it's actually needed (when the gif popup is
opened and the recent gifs tab is activated), and on top of that
we also load the data asynchronously to keep the amount of work
that needs to be done in a single tick as short as possible.

This needs: status-im/status-go#3170

Closes #9437
2023-03-08 12:00:40 -05:00